![]() |
Felder in Stringgrid färben
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,
also das mit dem Färben an sich ist nicht das Problem nur will ich, dass die Felder bei Rechtsklick Aus(Schwarz) und bei Linksklick An(Rot) werden. Im Moment hab ich das noch so gelöst, das alles über die linke Maustaste geht und wenn Feld = An dann Feld = Aus und andersrum. Wie kann ich das also machen? Wenn ich die Maustaste bei MouseDown auslese und dann dadurch die Farbe bestimmen lasse kann man nicht mehr durch gedrückthalten der Maustaste mehrere Felder färben sondern immer nur eins. Hoffe ihr habt mein Problem verstanden. Sieht im Moment so aus.
Delphi-Quellcode:
var matrix : array [0..17,0..7] of boolean;
procedure TForm1.stringgrid1SelectCell(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean); begin if matrix[acol,arow] = false then matrix[acol,arow] := true else matrix[acol,arow] := false; end; procedure TForm1.stringgrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); begin case matrix[acol,arow] of false: stringgrid1.Canvas.brush.color:= clblack; true : stringgrid1.Canvas.brush.color:= clred; end; stringgrid1.Canvas.fillrect(rect); end; |
Re: Felder in Stringgrid färben
Delphi-Quellcode:
Hmm...Warum nicht so:
procedure TForm1.stringgrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean); begin if matrix[acol,arow] = false then matrix[acol,arow] := true else matrix[acol,arow] := false; end;
Delphi-Quellcode:
procedure TForm1.stringgrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean); begin matrix[acol,arow] := not matrix[acol,arow]; end; |
Re: Felder in Stringgrid färben
ja ok, aber das ist ja nicht mein Problem.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz