Einzelnen Beitrag anzeigen

Gambit

Registriert seit: 28. Mai 2003
680 Beiträge
 
Delphi 7 Professional
 
#1

Namen aus einer ComboBox in Tabelle speichern

  Alt 29. Mai 2003, 20:56
Hallo,

die Überschrift triffts nicht ganz aber mir fiel nix besseres ein...

Zu meinem Problem: Ich habe eine Datenbank zur Verwaltung meiner DVDs geschrieben. Name ZB. eines Film lese ich aus der Tabelle in ein DBEdit ein. Das Feld "Genre" möchte ich aus einer ComboBox einlesen und in die Tabelle schreiben. Das habe ich so gelöst:

Delphi-Quellcode:
procedure TForm1.ComboBox2Change(Sender: TObject);
begin
  Table1.Edit;
  Table1.FieldbyName('Genre').AsString:=ComboBox2.Text;
  Table1.Post;
end;
Das klappt ja auch soweit. Jetzt möchte ich aber, dass sodann das entsprechende Genre als ComboBox.Text in derselben ComboBox angezeigt wird. Deshalb habe ich in der Prozedur DataSource1DataChange folgenden Code untergebracht:

Delphi-Quellcode:
procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);

begin
  ...
  ComboBox2.Text:= Table1.FieldbyName('Genre').AsString;
end;
Wenn ich jetzt den Datensatz wechsele, wird auch der Text in der ComboBox aktualisiert, nur das Genre ändern funzt nicht mehr. Es passiert nichts. Nehme ich den Eintrag aus DataSource1DataChange raus gehts wieder. Kann man immer schön im DBGrid beobachten.

Was mach ich da wohl falsch bzw. könnte mir jemand ne Lösung anbieten?

Gruß

Gambit
  Mit Zitat antworten Zitat