![]() |
Datenbank: Firebird emb. • Version: 1.5 • Zugriff über: Zeos
Focus in DBlookuplistbox setzen
Hallo,
ich möchte in einer DBlookuplistbox das nächste Element (also nach dem aktuell markierten) anwählen. Der Sinn soll darin bestehen, dass ich alle Elemente meiner DB (angezeigt in einer DBlookuplistbox) in eine normale Listbox schreiben will. Leider finde ich keinen Weg den besagten Fokus zu verschieben. Wenn also einer ne Idee hat, wäre ich sehr dankbar. MFG Steffen |
Re: Focus in DBlookuplistbox setzen
Hallo Steffen,
entweder ich verstehe dein Problem nicht richtig, oder du hast die falsche Komponente erwischt. Eine DBLookupListBox verwendest du z.B. dann, wenn du in einer Auftragsverwaltung die Zahlungsart festlegen willst. In einer Lookup-Tabelle MOP(ID, NAME) werden dazu die zulässigen Zahlungsarten (Visa, MasterCard, American Express, ...) mit ihren internen Schlüsseln (1, 2, 3, ...) hinterlegt. Der Benutzer wählt dann über die DBLookupListBox den Wert für den Fremdschlüssel MOP_ID der Auftrags-Tabelle ORD aus, indem er Visa selektiert - die Funktionalität der Komponente sorgt für die Eintragung des korrekten Fremdschlüssels (1) in das Tabellenfeld ORD.MOP_ID. Natürlich kannst du den Fokus in der ListBox auf den nächsten Eintrag verschieben. Das geschieht durch das Eintragen des Schlüssels dieses Eintrages in das Feld ORD.MOP_ID - aber ob das wirklich das ist, was du möchtest? Wenn du alle Werte eines bestimmten Tabellenfeldes in eine normale ListBox eintragen möchtest, dann brauchst du eigentlich gar keine visuelle Komponente, sondern kannst direkt auf der Tabelle operieren:
Delphi-Quellcode:
Nachdenkliche Grüße vom marabu
begin
ListBox.Items.Clear; with Query do begin SQL.Text := 'SELECT feld FROM tabelle ORDER BY feld'; Open; while not Eof do begin ListBox.Items.Add(FieldByName('FELD').AsString); Next; end; Close; end; end; |
Re: Focus in DBlookuplistbox setzen
Mein Problem war, dass ich Tabellendaten in eine Listbox schreiben wollte.
Diese Tabellendaten waren bereits in einer DBlookuplistbox dargestellt. Dein obiges Beispiel hat genau das getan, jedoch ohne direkt auf die DBLookupLB zuzugreifen (was keinen Unterschied macht)... Vielen Dank!! MFG Steffen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz