Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TStringGrid (https://www.delphipraxis.net/119384-tstringgrid.html)

Willie1 25. Aug 2008 18:47


TStringGrid
 
Hallo Leute,
ich zeige Daten in einem StringGrid. 2 Spalten sollen vom Editieren ausgeschlossen sein. Das erreiche ich mit SelectCell: CanSelect:=not (ACol in [1,13]). Wenn ich nun von einem fokusierten Feld mit Mausklick auf ein (gesperrtes nicht fokusierbares) Feld wechseln will, entsteht eine eine blaue (wie bei Selektieren) Fläche zwischen alten und neuen Klickfeld. Das ist nutzlos und sieht unprofessionell aus. Wie kann ich das verhindern? DirectDraw soll auf false bleiben.

MfG

mkinzler 25. Aug 2008 19:19

Re: TStringGrid
 
Male selber (OwnerDraw)

NickelM 25. Aug 2008 21:22

Re: TStringGrid
 
Hmm.. also bei mir gehts: D5 mit TStringGrid

procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
CanSelect := not (ACol in [1,3]);
end;

end.

Das kann man jetzt nicht mehr die 2 Spalten anklicken.
íst genau der gleiche Code wie bei dir nur Spalten geändert.
Xp Mit Silber Style Zellen werden nicht selektiert (kein Grauer Rand bei mir die anderen ja)

Willie1 27. Aug 2008 07:26

Re: TStringGrid
 
Guten Morgen,
"DirectDraw"(?) - ich meinte natürlich OwnerDraw! Ich habe das Programm umgeschrieben, jetzt klappt es ohne blaue Markierungen. Ich dachte, es gäbe einen Trick ohne "selber malen". Mit D5 habe ich es nicht ausprobiert.

Willie


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:18 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz