DBGrid Cell Value

Rund um die LCL und andere Komponenten
Antworten
slai
Beiträge: 211
Registriert: Fr 27. Apr 2007, 17:36
Wohnort: Zürich
Kontaktdaten:

DBGrid Cell Value

Beitrag von slai »

Hallo zusammen

Bin nun schon seit einiger Zeit am versuchen auf einen Wert einer Zelle in einem DBGrid zuzugreifen, ohne das sich der Zeiger auf dem Query ändert.
Ziel ist es das wenn man dran ist einen Record hinzuzufügen mit F4 den Sichtbaren oberen wert, der oberen Zelle kopieren kann.

Versucht hab ich schon mit:

Code: Alles auswählen

ShowMessage(TStringGrid(DBGFIBU).Cells[1,1]);
Funktioniert jedoch leider nicht.
Sonst finde ich nichts...

Danke für Antworten!
Windows 7, Lazarus 0.9.28.2 fpc 2.2.4, Firebird 2.1, Zeoslib 6.6.6-stable

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6837
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: DBGrid Cell Value

Beitrag von af0815 »

slai hat geschrieben:Hallo zusammen

Bin nun schon seit einiger Zeit am versuchen auf einen Wert einer Zelle in einem DBGrid zuzugreifen, ohne das sich der Zeiger auf dem Query ändert.
Ziel ist es das wenn man dran ist einen Record hinzuzufügen mit F4 den Sichtbaren oberen wert, der oberen Zelle kopieren kann.

Versucht hab ich schon mit:

Code: Alles auswählen

ShowMessage(TStringGrid(DBGFIBU).Cells[1,1]);
Funktioniert jedoch leider nicht.
Sonst finde ich nichts...

Danke für Antworten!
Nicht das Grid selbst hat die Daten, sondern die überlagernde Datenbank.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Re: DBGrid Cell Value

Beitrag von monta »

Soweit ich weiß, ist es nicht möglich, eine andere Zeile auszulesen ohne nicht zumindest temporär den Zeiger auf diese zu verschieben.

Vermutlich wäre also das sinnvollste, zu beginn des Bearbeitens kurz den Zeiger auf die Zeile zu verschieben, diese temporär zu speichern und dann beim eigentlichen Bearbeiten aus dieser Kopie heraus die Felder zu füllen (bei F4).

Wenn du den Zeiger auf den entsprechenden DS gesetzt hast, kommst du über Dataset.FieldByName an die einzelnen Felder ran.
Johannes

slai
Beiträge: 211
Registriert: Fr 27. Apr 2007, 17:36
Wohnort: Zürich
Kontaktdaten:

Re: DBGrid Cell Value

Beitrag von slai »

hy monta und af0815

Danke für die Antworten:
Monta-> dies hatte ich auch im hinterkopf, schade das man nicht direkt auf die Texte zugreifen kann über DBGrid. In diesem Fall muss ich hald vorher die Zeilen zwischenspeichern.

Gruss
Slai
Windows 7, Lazarus 0.9.28.2 fpc 2.2.4, Firebird 2.1, Zeoslib 6.6.6-stable

Antworten