![]() |
ListBox zum MeastureItem zwingen
Hallo,
Ich habe eine OwnerDrawVariable-Listbox. Diese möchte ich jetzt dazu zwingen das aktuelle Item neu zu "vermessen". Dazu soll sie ListBox.OnMeasureItem aufrufen. Aber wie geht das? Refresh geht nicht. Repaint macht das auch nicht. Ja gibt es denn gar nichts?! Die Suche hat mir leider auch nicht weitergeholfen. Danke schonmal, liebe Grüße Peter |
Re: ListBox zum MeastureItem zwingen
Eine wirklich Dumme möglichkeit die mir gerade einfällt wäre Eintrag zu löschen und neu einzufügen. Dann sollte er auf jeden Fall die Höhe neu ermitteln.
|
Re: ListBox zum MeastureItem zwingen
Daran dachte ich auch schon. Ist nur etwas blöde wenn der Eintrag mittendrin steht. Außerdem hab ich ein Array das konstant zur Listbox mitläuft, da wäre das schon ätzend...
|
Re: ListBox zum MeastureItem zwingen
Du kannst doch mit Insert den Eintrag genau an die Stelle einfügen, an der er rausgelöscht wurde.
Delphi-Quellcode:
ListBox1.Items.Delete(Index);
ListBox1.Items.Insert('Hallo',Index); |
Re: ListBox zum MeastureItem zwingen
ah, ok.
Wußte ich gar nicht. Aber schön ist das ja dann immer noch nicht, oder? BTW: Gibts auch einen Befehl um ein Array-Element zu löschen und die anderen aufrücken lassen oder brauch ich da ne FOR-Schleife? edit:
Delphi-Quellcode:
ist falsch, es müßte
ListBox1.Items.Insert('Hallo',Index);
Delphi-Quellcode:
heißen!
ListBox1.Items.Insert(Index,'Hallo');
edit2: funzt astrein! |
Re: ListBox zum MeastureItem zwingen
und um auf das löschen zu verzischten geht auch noch
Delphi-Quellcode:
Listbox.Items.BeginUpdate;
Listbox.Items.EndUpdate; |
Re: ListBox zum MeastureItem zwingen
Zitat:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:22 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