![]() |
ListBox horizontal scrollen, Liste Kopieren, ...
Hallo,
in Obj Inspektor kann man nicht alle Eigenschaften von ListBox ändern 1. Rechte Maustaste ist deaktiviert 2. horizontal scrollen nicht vorhanden 3. man kann nicht alle liste auswählen mit Strg + A, wenn man die List kopieren will wie kann ich diese Eigenschaften bekommen? <> |
Re: ListBox horizontal scrollen, Liste Kopieren, ...
Zitat:
|
Re: ListBox horizontal scrollen, Liste Kopieren, ...
Naja, die musst Du dir selbst reinbasteln.
* die rechte Maustaste braucht bei Dir ja mitunter ganz eigene Funktionen * und mit STRG + A kannst Du dir auch selber helfen Musst halt nur die Ereignisse OnKeyDown/Up abfragen und OnMouseUp und ein PopUp aufrufen. LG, Markus |
Re: ListBox horizontal scrollen, Liste Kopieren, ...
Problem 2 ist mit diesem Code gelöst :
Delphi-Quellcode:
1., 3. offen!
procedure TForm1.FormCreate(Sender: TObject);
var i, intWidth, intMaxWidth: Integer; begin intMaxWidth := 0; for i := 0 to ListBox1.Items.Count-1 do begin intWidth := ListBox1.Canvas.TextWidth(ListBox1.Items.Strings[i] + 'x'); if intMaxWidth < intWidth then intMaxWidth := intWidth; end; SendMessage(ListBox1.Handle, LB_SETHORIZONTALEXTENT, intMaxWidth, 0); end; <> |
Re: ListBox horizontal scrollen, Liste Kopieren, ...
Mann!
Rechte Maustaste im OnMouseUp/Down: Popup.popup! Strg * A -> Mach ein OnKeyUp und gucke, ob beide Tasten gedrückt sind. Wenn ja, markier die Sachen in der ListBox. Wenn man Dir nicht alles vorkaut ist auch nicht gut, oder? Ich will ned wissen, wie deine Programme von innen aussehen. Ein Flickwerk aus tausenden Foren-Beirägen und Code-Snippets... LG, Markus |
Re: ListBox horizontal scrollen, Liste Kopieren, ...
Ahoj taktaky,
wenn du der ListBox ein Kontext-Menü zuordnest (property PopupMenu), dann musst du dich um die rechte Maustaste nicht kümmern. Den horizontalen Rollbalken setze ich so:
Delphi-Quellcode:
Die Auswahl aller Items kannst du mit der Methode SelectAll() machen.
procedure AdjustScrollWidth(lb: TCustomListBox);
var i, maxWidth: Integer; begin maxWidth := 0; with lb do begin for i := 0 to Pred(Items.Count) do maxWidth := Max(Canvas.TextWidth(Items[i]), maxWidth); ScrollWidth := maxWidth + 4; end; end; Grüße vom marabu |
Re: ListBox horizontal scrollen, Liste Kopieren, ...
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00: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