Einzelnen Beitrag anzeigen

PaKir

Registriert seit: 2. Jan 2005
Ort: Neunkirchen
20 Beiträge
 
Delphi 7 Personal
 
#1

Felder in Stringgrid färben

  Alt 12. Mär 2005, 13:56
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;
Angehängte Dateien
Dateityp: rar test_213.rar (4,6 KB, 15x aufgerufen)
  Mit Zitat antworten Zitat