Warum muss ich ein Item im Kombinationsfeld 2 mal auswählen?
-
Hm, vielleicht ist es so, weil er erst beim 2. Aufruf das UpdateData()
_nach_ den Änderungen ausführt ?
Du solltest noch ein UpdateData ans ende der Funktion anfügen.Devil
-
Das hat gar nichts bewirkt
-
Meinst Du nicht, dass Deine Infos etwas dürftig sind?
Was macht 'AddRecordSet'? Wieso liefert es ein 'int' zurück? Was macht 'GetRecordSet()'?Wahrscheinlich fehlt bei AddRecordSet einfach nur ein Update der Datenbank!
-
AddRecordset öffnet ein Recordset,fügt es einen Array hinzu,und liefert den Index zurück.
GetRecordset liefert den Zeiger auf das Recordset zurück.
Da ich Daten aus der Datenbank abfrage,und nicht Daten in der Datenbank ändere kann es nicht an einen fehlenden Aufruf von Update liegen.
-
OK, das AddRecordset verwirrt ganz schön!
Das mit der Combobox müsste eigentlich so gehen, bei mir funzt es ja auch. Also muss es wohl an der DB irgendwo liegen.
Debuggen müsste doch helfen, oder nicht?
-
Du solltest noch ein UpdateData ans ende der Funktion anfügen.
Hast Du UpdateData(True) oder UpdateData(False) eingefügt ?
Gruß
Bernd
-
Ich habs mit beiden versucht
-
Ich habe beim debuggen heraus gefunden das m_Marke den Text des vorher ausgewählten Items enthält,aber ich weiss nicht wieso.
-
Da haben wir den Fehler, ich nutze nicht UpdateData ... der Grund:
CBN_SELCHANGE wird gesendet, wenn sich die Auswahl in der Combobox geändert hat. Damit ist die Marke GetCurSel() richtig definiert. Das bedeutet aber noch nicht, dass das Editfeld schon den neuen Text erhalten hat, welcher in UpdateData verlangt wird.
Du musst also per GetCurSel die Selektion holen und per GetLBText die Variable m_Marke selber belegen.
-
Danke jetzt läuft es