Hallo,
das ist super einfach.
Am Beispiel: Dein DrawGrid hat den Namen „DrawGrid1“ und befindet sich in Formular „Form1“. Dem Ereignis „OnDrawCell“ ist die Methode „TForm1.DrawGrid1DrawCell“ zugeordnet. In dieser Methode kannst du mit „DrawGrid1.Canvas“ direkt auf den Canvas des Drawgrids zugreifen. Die Zellenbegrenzung wird im Parameter „Rect“ übergeben. Folgendes Beispiel zeichnet zB. eine Ellipse in jede Zelle:
**procedure** TForm1.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState);
**begin**
DrawGrid1.Canvas.Ellipse(Rect);
**end** ;
Statt DrawGrid1 direkt anzusprechen kannst du auch den Parameter „Sender“ benutzen, dessen Typ du in ein TDrawGrid „castest“:
TDrawGrid(Sender).Canvas.Ellipse(Rect)
Das isses auch schon. Ich hoffe, damit kommst du weiter!
LG
Jochen
Ich habe gerade das DrawGrid entdeckt, dass ich für meine
Zwecke vermutlich sehr gut nutzen könnte. Ich möchte nämlich
kleine Bitmaps (TBitmap-Objekte - alle mit der selben Grösse)
in die Zellen des DrawGrids zeichnen. Ausser der – leider sehr
spärlichen – Hilfe von D2006 werde ich aber nicht schlau, da
steht nur ich solle OnDrawCell implementieren und dort auf dem
Canvas zeichnen… Aber wie komme ich an den Canvas einer Zelle
und bringe da meinen TBitmap rein ?
Danke & Gruss
Roger