Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Eine bestimmte Zeile in derListbox soll an der Spitze stehen (https://www.delphipraxis.net/127014-eine-bestimmte-zeile-derlistbox-soll-der-spitze-stehen.html)

Tod787 6. Jan 2009 15:25


Eine bestimmte Zeile in derListbox soll an der Spitze stehen
 
Hab eine Funktion die meine Listbox nach einem bestimmten Wort durchsucht. Ist dieses gefunden wird zwar die Zeile markiert und auch hingescrollt allerdings ist die Zeile dann irgendwo in der Listbox zu sehen. Wie schaffe ich es sie an oberster Stelle in der Listbox zu platzieren?

lincore 6. Jan 2009 15:32

Re: Eine bestimmte Zeile in derListbox soll an der Spitze st
 
Ich habe die TListBox noch gar nicht verwendet, aber laut der Hilfe scheint der einzige Weg zu sein, die TListBox umzusortieren. Dazu würde ich ein Array nehmen, das genau so groß ist wie die ListBox Items hat und den gesuchten Begriff bei index 0 hinzufügen. Anschließend wird der Rest der Reihe nach hineinkopiert (ausgenommen das gesuchte Item, latürnich). Zuletzt fügt man die umsortierte Liste wieder in die TListBox ein und zeichnet sie neu.

mkinzler 6. Jan 2009 15:35

Re: Eine bestimmte Zeile in derListbox soll an der Spitze st
 
Besser eine weitere Liste, diese kann man dann einfach der ListBox zuweisen

Nersgatt 6. Jan 2009 15:37

Re: Eine bestimmte Zeile in derListbox soll an der Spitze st
 
Delphi-Quellcode:
ListBox1.Items.Move(1,0);
Bewegt das Zeichen 1. Stelle an die 0. Stelle.

Gruß,
Jens

Tod787 6. Jan 2009 15:53

Re: Eine bestimmte Zeile in derListbox soll an der Spitze st
 
Also eigentlich will ich ja nichts verschieben sondern nur soweit scrollen dass meine markierte Zeile in der Listbox oben steht

lincore 6. Jan 2009 15:57

Re: Eine bestimmte Zeile in derListbox soll an der Spitze st
 
Delphi Hilfe (kann man mal 'reinschauen):
Zitat:

Mit TopIndex können Sie ermitteln oder festlegen, welcher Eintrag am oberen Rand des Listenfeldes angezeigt wird. Auf diese Weise können Sie beispielsweise einen anderen Eintrag als obersten Eintrag anzeigen lassen.

Tod787 6. Jan 2009 16:14

Re: Eine bestimmte Zeile in derListbox soll an der Spitze st
 
danke Lincore genau das wars

alleine schon mit
Delphi-Quellcode:
Listbox1.TopIndex := i;
ist der Käse schon gegessen!


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