![]() |
Re: StringGrid: Zellen-Farbe bei Click ändern
Zitat:
|
Re: StringGrid: Zellen-Farbe bei Click ändern
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
kein Zweifel - alle beschriebenen Wege führen in die italienische Hauptstadt, aber wenn man weiß wie ein StringGrid intern arbeitet, dann möchte man keine Farbnamen in den Zellen speichern. Aus dem gleichen Grund würde ich wohl auch die Objects[] nicht für eine Farbkodierung verwenden wollen. Man quält den Speicherverwalter, wenn man eine sparse matrix wie ein fest dimensioniertes Array benutzt. Wenn es nur um interaktive Farbkodierung geht, würde ich in Abhängigkeit von der Zustandsanzahl einen linearen BitVector oder ein korrelierendes zweidimensionales Array of Byte einsetzen. Ich habe mal für den letzteren Fall eine Demo angehängt. Idealerweise nimmt man ein statisches Array, aber ich habe im Beispielcode ein dynamisches Array implementiert. Die Umstellung sollte leicht fallen, da die Initialisierung dann einfach per ZeroMemory() erfolgen kann. Grüße vom marabu |
Re: StringGrid: Zellen-Farbe bei Click ändern
Marabu, das wäre der dritte Weg. Aber das ist nicht der goldene Mittelweg. Unabhängig vom Grid noch ein Array mitschleppen. Es geht aber noch mehr. Wie wäre es mit INI usw. ? 8) Beim Array ist schlecht, dass es ohne weiteres so nicht geht, sofern das Grid nicht starr ist. Schachbrett könnte man so behandeln, aber wehe RowCount etc. ändert sich. Es wäre schwierig das Grid und das Array synchron zu halten. Diese Hürde fällt bei den Objects einfach weg.
Sollte das Grid nur Farben behandeln können und ist es auch noch starr, dann würde ich aber wirklich die Farben im Klartext in die Zellen schreiben. Zu sehen ist davon nämlich absolut nichts. |
Re: StringGrid: Zellen-Farbe bei Click ändern
Hallo Jungs,
danke für eure Vorschläge. ich bin aber jetzt auf der Schiene mit den Objects geblieben und hab es etwas ausgebaut - nachdem ich dahinter gekommen bin, wie es funktioniert. Anbei ein Test-Projekt. Wie gesagt - es ist ein Test-Projekt - deswegen die Standard-Bezeichnungen der Komponenten und ohne Kommentare. (Ich mach gerne Testprojekte um dann die Erkenntnisse daraus ins eigentliche Projekt zu übernehmen) Damit schlag ich 2 Fliegen mit einer Klappe. 1. das Ändern mit der Farbe (die Frage dieses Threads) 2. die Frage auf das Feststellen einer Zellenfarbe (von diesem ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:51 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