Entwickler-Ecke

Datenbanken - Problem mit DBComboBox


Aadelbert - Mi 29.12.10 00:37
Titel: Problem mit DBComboBox
Hallo Leute,

ich habe eine DBComboBox, wobei der Inhalt aus mehreren Spalten einer Tabelle angezeigt wird.

Wenn die Box aus der Datenbank geladen wird steht dort:

Delphi-Quelltext
1:
DBComboBox1.ItemsIndex := 0;                    

Wenn ich jetzt mit der Maus einen Eintrag auswähle und die Box mit der Enter-Taste verlasse, wird die Auswahl selektiert und auf mehrere DBEdit's verteilt. In der DBComboBox wird weiterhin der ausgewählte Eintrag angezeigt, also:

Delphi-Quelltext
1:
DBComboBox1.ItemsIndex := 0;                    

Wenn ich mittels Pfeil rauf oder runter einen Eintrag auswähle und dann die Enter-Taste drücke, wird ordnungsgemöß selektiert und verteilt. Seltsamerweise wird die Auswahl aber nicht mehr in der DBComboBox angezeigt. Jetzt sieht es so aus als wäre plötzlich

Delphi-Quelltext
1:
DBComboBox1.ItemsIndex := -1;                    

Die DBComboBox verlasse ich im onKeyPress-Ereignis:

Delphi-Quelltext
1:
2:
3:
...
if key = #13 then Self.Perform(WM_NEXTDLGCTL, 00)
end;
Ein erneutes zuweisen:

Delphi-Quelltext
1:
2:
3:
...
DBComboBox1.ItemsIndex := Auswahl;
end;
führt zu keinem Erfolg.

Wenn ich folgendes eingebe, kann ich nicht einmal die Box mit der Entertaste verlassen.

Delphi-Quelltext
1:
2:
3:
4:
if key = #13 then 
begin 
Button1.SetFocus;
end;

Wenn ich die Box mit der TAB-Taste verlasse, funktioniert es wie mit der Maus.
Ich verlasse alle Felder nur mit der Enter-Taste und möchte deshalb auch die DBComboBox derartig verlassen.

Es wäre nett wenn mir jemand etwas Hilfestellung geben könnte.

Gruß an alle

Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt