Autor Beitrag
Dave_Bowman
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 30



BeitragVerfasst: Fr 21.01.05 19:12 
Hallo,

ich habe ein Programm mit Adressen-Modul. Die Straße, die Hausnummer, die PLZ und der Ort werden getrennt eingegeben. Der Plan ist, die Straßen mit zugehörigen PLZ und Ort zu sammeln, sodass, wenn ich das nächste Mal eine Straße eingebe, die ich bereits erfaßt habe, automatisch PLZ und Ort eingetragen werden können.
Funktioniert soweit auch. Mein Problem nun ist folgendes:

Im OnChange-Ergebnis der ComboBox (genauer DBComboBox) trage ich als Items nur die Straßen ein, die noch in Frage kommen (also nach Drücken eines S alle Straßen, die mit S beginnen). Dabei rutscht der Cursor wieder vor das S, was ich mit .SelStart wieder ändere. Blöderweise aber steht nach dem OnChange-Ereignis nicht das S im Feld, sondern gleich die ganze erste Straße, die mit S beginnt. Und damit sind dann als Items auch alle anderen ausgeblendet.
Hier mal das OnChange:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
  DBCobAdr_Firma_Str.Items.Clear;
  if DBCobAdr_Firma_Str.Text = '' then
    for i := 0 to Length(arAdressen) - 1 do
      DBCobAdr_Firma_Str.Items.Add(arAdressen[i, 0])
  else
    for i := 0 to Length(arAdressen) - 1 do
      if LeftStr(arAdressen[i, 0], Length(DBCobAdr_Firma_Str.Text)) = DBCobAdr_Firma_Str.Text then
        DBCobAdr_Firma_Str.Items.Add(arAdressen[i, 0]);
  DBCobAdr_Firma_Str.SelStart := Length(DBCobAdr_Firma_Str.Text);


Ideal wäre es, wenn mit Erreichen der ComboBox automatisch die Liste rausklappt, oben im Feld nur das steht, was ich eingebe und dabei aber unten die Liste angepaßt wird. Wie kann ich das bewerkstelligen? Und mal eine blöde Frage: Kann ich überhaupt der Eigenschaft Text was zuweisen, oder muss ich das gleich in das entsprechende Feld der Tabelle schreiben?
Vielen Dank für Eure Antworten ... und Euch ein schönes Wochenende!

Dave