Ein freundliches Hallo an alle,
ich habe einen Effekt, den ich bisher nicht erklären kann. Vielleicht hat jemand schon herausgefunden, was da geschieht und kann es erklären.
Da es um einige hundert Programmzeilen geht, beschreibe ich den Effekt, statt den Code zu zeigen. Ich verwende ein Stringgrid, um Daten für eine Anzeige aus einer Datei zu laden. Wenn ich nun einen Link der einer Taste zugeordnet ist anlegen will, wird ein Fenster geöffnet, mit dem die Daten bearbeitet werden können. Die Daten werden dann vom Fenster abgeholt und in eine Stringliste nach dem Schema "Wert=Datum" eingetragen. Diese Stringliste wird dann als Commatext in die Zelle geschrieben. Damit der gesamte Datensatz und nicht jeder Wert einzeln in die Datei geschrieben wird, erfolgt das Speichern auf "Knopfdruck". Doch da zeigt sich folgender Effekt: Beim Speichern im Stringgrid sehe ich die Daten im Grid, aber beim Speichern der Datenzeile ist die Zelle leer.
Das Grid und die Routinen sind Teil des Objekts. Wenn ich mir die Adresse des Grids beim Speichern im Grid und beim Speichern in der Datei hole (Addr(X)), ist diese identisch, aber nicht der Inhalt. Ausschalten der Optimierung vor und wieder Einschalten nach den Routinen ergab keine Änderung.
Hat jemand eine Idee, was hinter diesem Effekt steckt??
Grüße von der wolkigen Nordsee
Peter
Moderiert von Th69: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Fr 05.05.2023 um 15:08