AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Focus in DBlookuplistbox setzen
Thema durchsuchen
Ansicht
Themen-Optionen

Focus in DBlookuplistbox setzen

Ein Thema von WIng2005 · begonnen am 5. Apr 2006 · letzter Beitrag vom 5. Apr 2006
Antwort Antwort
WIng2005

Registriert seit: 20. Mär 2006
Ort: Thüringen
388 Beiträge
 
Delphi XE Starter
 
#1

Focus in DBlookuplistbox setzen

  Alt 5. Apr 2006, 13:24
Datenbank: Firebird emb. • Version: 1.5 • Zugriff über: Zeos
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
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Focus in DBlookuplistbox setzen

  Alt 5. Apr 2006, 17:35
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:
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;
Nachdenkliche Grüße vom marabu
  Mit Zitat antworten Zitat
WIng2005

Registriert seit: 20. Mär 2006
Ort: Thüringen
388 Beiträge
 
Delphi XE Starter
 
#3

Re: Focus in DBlookuplistbox setzen

  Alt 5. Apr 2006, 22:01
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
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz