DBGrid - selektierte Zeile - OnChange Event?
-
Mal schnell ne Frage: Wie bestimme ich die ausgewählte Zeile in meinem DBGrid?
Ich möchte nämlich zu jedem Datensatz (zu jeder Zeile) ein zugehöriges Bild anzeigen.
Dafür brauche ich zudem ein DBGridOnChange - gibt es nur leider nicht.Ach ja: FAQ und Suche haben mir nicht geholfen. Bin leider Anfänger und hoffe jemand hat eine einfache Lösung für mich
Vielen Dank.
-
Pansemuckl schrieb:
FAQ und Suche haben mir nicht geholfen.
-
Jansen schrieb:
FAQ und Suche haben mir nicht geholfen.
http://www.c-plusplus.net/forum/viewtopic.php?t=10635Ich habe DB Programm mit einer ComboBox und einem DBGrid:
Table
-----
Feld_1 Feld_2 Feld_3 ...
Wert_1_1 Wert_2_1
Wert_1_2 usw...DBGrid
------
Feld_1 Feld_2 Feld_4In der Combobox stehen *alle* Werte von Feld_1 zur Auswahl bereit:
Combobox
--------
0: ""
1: Wert_1_1
2: Wert_1_2
....Ich möchte nun dass Combobox und DBGrid synchron laufen, d.h. wenn ich in der ComboBox etwas anderes auswähle, dann soll die entspr. Zeile im
DBGrid stehen (das klappt ja), umgekehrt soll ein Klick ins DBGrid den "geklickten" Datensatz in der Combox als ausgewählt setzen. Mit
SelectedIndex geht es nicht da in der Comboxbox ja alle Werte von Feld_1 stehen und im DBGrid je nach Query nur 1 oder 2.Ich müsste also in DBGridDrawColumnCell() feststellen, welche Zeile im DBGrid geklickt wurde und wie der zugehörige Feld_1-Wert lautet,
um diesen dann auch ComboBox->Text zuzuweisen. Nur wie bestimme ich den Wert der ersten Spalte des ausgewählten Datensatzes im DBGrid?Habs bisher sogelöst
DBGrid->Options->dbRowSelect = true; (damit SelectedField->AsString immer der Wert von Feld_1 ist),
dann in ColEnter() CellClick() jeweils ComboBox->Text = DBGrid->SelectedField->AsString einfügen.Problem: MouseWhell-Aktionen werden nicht berücksichtigt