Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Auswahl aus der Listbox (https://www.delphipraxis.net/19412-auswahl-aus-der-listbox.html)

Gerhard 2. Apr 2004 19:47


Auswahl aus der Listbox
 
Hi,

ich habe auf einer Form eine Listbox erstellt. Die Listbox besitzt mehrer Einträge. Mein Wunsch wäre nun, einen bestimmen Eintrag nicht mit der Maus sonder nur mit Tasten auszuwählen. Schwierigkeiten macht mir die Änderung der Auswahlzeile, meine Vorstellung wäre in etwa so

FormX.listboxX.onkeydown...

if (ord(key))= xxx then begin
wähle die nächste (bzw. vorhergehende) Zeile aus der Listbox
...


Danke für die Tips!

Gerhard

Mirilin 2. Apr 2004 19:49

Re: Auswahl aus der Listbox
 
:hi:

Schau Dir mal ItemIndex an.

mfg Tobias

Gerhard 2. Apr 2004 20:22

Re: Auswahl aus der Listbox
 
Habe Listbox.itemindex:= ..+1 und soweiter schon getestet, jedoch ist die Auswahl nicht mitgegangen!

Gerhard

Mirilin 2. Apr 2004 20:35

Re: Auswahl aus der Listbox
 
:hi:

Also bei mir hats geklappt.

Delphi-Quellcode:
procedure TMainForm.ListBoxKeyPress(Sender: TObject; var Key: Char);
begin
  if Uppercase(Key) = 'U' then
  begin
    if ListBox.ItemIndex = 0 then
      ListBox.ItemIndex := ListBox.Items.Count-1
    else
      ListBox.ItemIndex := ListBox.ItemIndex - 1;
  end;
  if Uppercase(Key) = 'D' then
  begin
    if ListBox.ItemIndex = ListBox.Items.Count - 1 then
      ListBox.ItemIndex := 0
    else
      ListBox.ItemIndex := ListBox.ItemIndex + 1;
  end;
end;
mfg Tobias

Gerhard 3. Apr 2004 08:20

Re: Auswahl aus der Listbox
 
Danke hierfür,

der Source funktioniert, habe ihn getestet!

Aber: wenn ein Eintrag mit dem gleichen Buchstaben beginnt zB. 'u' springt die Markierung auf den mit u beginnenden String und bleibt dort sitzen....

Was soll ich nun machen?

Gerhard

Mirilin 3. Apr 2004 13:40

Re: Auswahl aus der Listbox
 
:hi:

:gruebel: ich glaube "AutoComplete" auf False sollte funktionieren.


mfg Tobias


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:38 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