![]() |
Listbox und Scrollbar
ich trage mit
listbox.items.add(text) laufend einen Text in eine Listbox. Der Text wird auch angezeigt, am Rand erscheint der Scrollbar, der sich aber nicht bewegen läßt, sodaß man sich den Text den folgenden Seiten nicht ansehen kann. In den Eigenschaften zur Listbox finde ich auch keinen Hinweis, Scrollbar zu aktivieren oder deaktivieren. Kann kir jemand einen Tipp geben? |
Re: Listbox und Scrollbar
Hi, herzlich willkommen!
Falls dies während des Befüllens in einer Schleife auftritt, könnte ein Aufruf von
Delphi-Quellcode:
in der Schleife Abhilfe schaffen.
Application.ProcessMessages;
Soll die Listbox im Hintergrund gefüllt und alle Items auf einmal angezeigt werden, was deutlich schneller ist, schaue dir mal
Delphi-Quellcode:
an. Evtl. geht das dann so schnell, dass du gar nicht während des Befüllens scrollen musst.
ListBox.Items.BeginUpdate;
ListBox.Items.Add(...); ListBox.Items.EndUpdate; |
DP-Maintenance
Dieses Thema wurde von "Matze" von "Sonstige Fragen zu Delphi" nach "VCL / WinForms / Controls" verschoben.
|
Re: Listbox und Scrollbar
Hallo,
Danke für die Antwort; funktioniert aber nicht. In der Liste soll nach Ende des Füllens gescrollt werden, bevor der Inhalt zum Druck freigegeben wird. Ich bin deshalb so hilflos, weil ich genau dieselbe Anweisunge (listbax.items.add (..) in einem anderen Programm schon mal verwendet habe und da funktioniert es einwandfrei. Gruß Neffets |
Re: Listbox und Scrollbar
Hallo,
mir ist noch was eingefallen. Oder muß der letzte Eintrag in der Listbox etwas besonderes sein, damit diese geschlossen wird und ein scrollen möglich wird? Neffets |
Re: Listbox und Scrollbar
Hallo Steffen,
da gibt es eigentlich keine Besonderheiten - es steht und fällt mit deinem Ansatz zum Befüllen der ListBox. So zum Beispiel werden neue Einträge unten angefügt und automatisch sichtbar gemacht:
Delphi-Quellcode:
Freundliche Grüße vom marabu
procedure TDemoForm.TimerTimer(Sender: TObject);
begin with ListBox do begin Items.Add(RandomStr(7)); ItemIndex := Pred(Count); end; end; |
Re: Listbox und Scrollbar
besten Dank,
mit Deiner Anweisung ist man nach dem letzten Eintrag am Ende der Liste, aber zum Anfank kommt man nicht zurück; der Scrollbar läßt sich nicht bewegen. Grüße Neffets |
Re: Listbox und Scrollbar
Solange keiner außer dir weiß, wie die ListBox befüllt wird, müssen alle Hilfestellungen etwas nebulös bleiben. Bei meinem Beispiel kannst du selbstverständlich an den Anfang der ListBox zurück scrollen - wenn das Timer.Interval dir genügend Zeit dazu lässt.
Freundliche Grüße |
Re: Listbox und Scrollbar
könntest Du mir das timer.interval näher erläutern.
Kann man das beeinflussen Grüße |
Re: Listbox und Scrollbar
Interval ist eine Eigenschaft der Komponente Timer auf der Palettenseite System. Der Wert ist 1000 Millisekunden, aber du kannst ihn im Object Inspector relativ frei einstellen. Ich habe die Timer-Komponente nur verwendet um ein fortlaufendes Befüllen der ListBox zu zeigen.
Freundliche Grüße |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 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