Einzelnen Beitrag anzeigen

Fridolin

Registriert seit: 8. Jan 2007
71 Beiträge
 
Delphi 2006 Architect
 
#1

voneinander abhängige Comboboxen

  Alt 18. Apr 2007, 08:33
Datenbank: mysql • Version: 5.2 • Zugriff über: mydac
Guten Morgen,

ich hab folgendes Problem mit meinen Comboboxen...

Ich habe mehrere Comboboxen in abhängigkeit gebracht. Das heisst, wenn ich in der Combobox-Fabrikate VW auswähle, dann werden in der Combobox-Modelle nur Modelle von VW angezeigt. Soweit sogut. Wenn ich jetzt bei Modelle Golf auswähle, dann werden in der Combobox-Motorisierung alle Variante für Golf angezeigt. Mein Problem ist jetzt, dass dann der Eintrag VW bei Combobox-Fabrikate fehlt.

Die Daten kommen aus einer MySQL Datenbank...


Delphi-Quellcode:
 var f, a:string;
begin
  f:=lowercase(fabcombobox1.Text);
    myquery3.SQL.Text:=('select f_id from fabrikate where fabrikat like ''%'+f+'%''');
    myquery3.Execute;
  a:=myquery3.Fields[0].AsString;


    if lowercase(fabcombobox1.Text) = f then
      begin
        modcombobox2.Clear;
        myquery4.SQL.Text:= ('select distinct modell from modelle, bezeichnungen where modelle.m_id = bezeichnungen.m_id and bezeichnungen.f_id = '''+a+''' ');
        myquery4.Execute;
      while not myquery4.Eof do begin
        modcombobox2.Items.Add(myquery4.Fields[0].AsString);
        myquery4.Next;
      end;
    end;

    if lowercase(fabcombobox1.Text) = f then
      begin
        motcombobox4.Clear;
        myquery13.SQL.Text:= ('select distinct motorisierung from motorisierungen, bezeichnungen where motorisierungen.mot_id = bezeichnungen.mot_id and bezeichnungen.f_id = '''+a+''' ');
        myquery13.Execute;
      while not myquery13.Eof do begin
        motcombobox4.Items.Add(myquery13.Fields[0].AsString);
        myquery13.Next;
      end;
    end;
...das ist der Quelltext für die Einschränkung der Daten in den anderen Comboboxen.

Das Problem ist, dass ich ja die anderen Comboboxen leere und dann mit denn betreffenden Daten neu befülle. Wie kann ich Delphi sagen, dass es alles löschen soll, außer dem Wert den ich in der Combobox an geklickt hatte???

Ich hoffe ich hab mich einigermaßen verständlich ausgedrückt...

MfG

Fridolin
  Mit Zitat antworten Zitat