Zitat von
Tigger:
Auch mir geht es darum, den Text in einer einzelnen Zelle einzufärben. Habe
hierüber auch schon einiges an Beiträgen gefunden, es ist aber nie erklärt,
wie ich für eine einzelne Zelle das OnDrawCell-Ereignis auslösen, also die
einzelne Zelle neu zeichnen kann.
Oder muß ich jedes Mal das gesamte StringGrid neu zeichnen lassen? Wenn ja,
bleiben dabei die Daten in den einzelnen Zellen erhalten oder muß ich diese
neu zuweisen?
Darum brauchst (und sollst) du dich nicht kümmern.
Sobald du den Text einer Zelle veränderst, werden automatisch verändere Zellen neu gezeichnet. Natürlich nur dann, wenn die Zelle sichtbar ist (nicht verdeckt).
Wenn du den Inhalt der Zellen nicht ändern möchtest, sondern nur das Einfärbe-Schema verändert hat (z.B. andere Farbe), dann rufst du einfach die Methode
[TCustomGrid].
InvalidateCell(x,y) auf !!!