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 TListBox, TCheckListBox scrollen (https://www.delphipraxis.net/139932-tlistbox-tchecklistbox-scrollen.html)

Schwedenbitter 8. Sep 2009 23:53


TListBox, TCheckListBox scrollen
 
Hallo,

ich benutze den hier im Forum zu findenden Code zum Verschieben von Einträgen in einer TCheckListBox. Das funktioniert soweit auch ganz gut.

Das Problem ist jedoch, dass mir das Scrollen überhaupt nicht gefällt:
Je größer das Fenster, desto besser klappt das Scrollen. Je kleiner (in meinem Fall 4 Zeilen) klappt es kaum. Das äußert sich daran, dass man beim Ziehen eines Eintrages an das Ende der Liste im unteren Bereich die Maus immer hoch und runter "rütteln" muss - nach oben dasselbe Spiel. Bei meinen 4 Zeilen klappt es manchmal garnicht.

Wie bekomme ich es hin, dass das Scrollen (fließend) klappt?

Ich habe bereits versucht, über die bei OnDragOver() mit übergebenen X- und Y-Positionen das Scrollen laufen zu lassen. Etwa so:
Delphi-Quellcode:
Procedure TForm1.DragOver();
...
   If Y<CheckListBox1.ItemHeight Then
      CheckListBox1.ScrollBy(0,-16);
   If Y>(CheckListBox1.Height-CheckListBox1.ItemHeight) Then
      CheckListBox1.ScrollBy(0,16);
...
Abgesehen davon, dass das unschöne Verzerrungen in der Box liefert, klappt das Scrollen nicht.

Gruß und Dank, Alex

XXcD 8. Sep 2009 23:54

Re: TListBox, TCheckListBox scrollen
 
Das ruckelfreie scrollen klappt mit der Eigenschaft tracking

Schwedenbitter 9. Sep 2009 20:15

Re: TListBox, TCheckListBox scrollen
 
Zitat:

Zitat von XXcD
Das ruckelfreie scrollen klappt mit der Eigenschaft tracking

Danke für den Hinweis.

Ich habe schon gesucht. Aber weder bei TListBox noch bei TCheckListBox finde ich die Eigenschaft Tracking. Wo genau kann ich das einstellen?

Gruß, Alex

XXcD 9. Sep 2009 20:22

Re: TListBox, TCheckListBox scrollen
 
Hmmm also so wie ich das gerade sehe hat die Listbox so eine Eigenschaft garnicht :(
Dann weiß ich jetzt leider auch nicht weiter.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:47 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz