DrawGrid & Canvas
Hi Leute!
Ich habe die Komponente Drawgrid auf eine Form gezogen. Jetzt zeichne ich ein Kreis in eine Zelle:
Delphi-Quellcode:
Mein Problem: Sobald ich das Programm starte, sind in jeder Zelle die roten Kreise. Wie schaffe ich es, dass, wenn ich z.B. auf die Zelle (0,0) klicke, dass auch nur in der Zelle (0,0) ein roter Kreis erscheint?
procedure TForm1.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState); begin Drawgrid1.Canvas.Brush.Color:=clred; Drawgrid1.Canvas.Ellipse(ACol*100,ARow*100,(ACol+1)*100,(ARow+1)*100); {eine Zelle ist 100*100 Pixel groß.} end; |
AW: DrawGrid & Canvas
Delphi-Quellcode:
Und statt auf 0 zu prüfen, solltest du prüfen, obs dem Ausgewählten Column gleicht! (Bei Mousedown die Position dementsprechend speichern)
if (ARow = 0) and (ACol = 0) then
Drawgrid1.Canvas.Ellipse(...) |
AW: DrawGrid & Canvas
Zitat:
Es gibt extra den Parameter State, in dem genau steht, ob die Zelle ausgewählt ist usw., d.h. es reicht entsprechend des Wertes dieses Parameters die Zelle zu zeichnen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:36 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