![]() |
Listbox mit Value
Hallo Leute,
ich möchte gern die Einträge in einer Listbox nummerieren, um auf die einzelnen items zugreifen zu können. Erschwerend dabei ist: listbox.sorted:= true; Ich habe mich hier schon ein wenig umgeschaut, als einzige Hilfe kam mir "ValueListeditor" entgegen. Das scheint das zu sein, was ich suche, habe ich aber nicht bei Delphi 3. Gibt es eine andere Lösung für mein Problem? MfG davar |
Re: Listbox mit Value
Moin moin,
setze Style der ListBox auf OwnerDraw und dann im OnDrawItem die Zeilen
Delphi-Quellcode:
with Control as TListBox do begin
if odSelected in State then Canvas.Brush.Color := clHighlight; Canvas.FillRect(Rect); Canvas.TextOut(Rect.Left+2, Rect.Top+2, IntToStr(Index+1)+ '. ' + Items[Index]); end; |
Re: Listbox mit Value
Hallo,
Zitat:
dann würde ich es mit AddObjekt machen:
Delphi-Quellcode:
//Eintragen in ListBox
ListBox1.Items.AddObject('Zum Gruß',Pointer(1)); ListBox1.Items.AddObject('Hallo',Pointer(2)); ListBox1.Items.AddObject('Auf Wiedersehen',Pointer(3)); //anzeige // Auf Wiedersehen // Hallo // Zum Gruß
Delphi-Quellcode:
//Eintrag mit der Nr. 3 suchen
var z,i : integer; begin i := 3; for z := 0 to ListBox1.Items.Count -1 do if Integer(ListBox1.Items.Objects[z]) = i then begin showmessage('gefunden: '+ ListBox1.Items[z]); exit; end; end; |
Re: Listbox mit Value
@Lannes: also eine "unsichtbare" Nummerierung ist doch eh schon über den Index vorhanden, wozu
dann nochmal nummerieren :gruebel: |
Re: Listbox mit Value
Hallo,
vermute das die Nummerierung vom Index abweicht, und : Zitat:
|
Re: Listbox mit Value
upps,
Nummerierung, um auf die Items zuzugreifen... Hab ich voll überlesen... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:17 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