VirtualStringTreeview, letzter Eintrag lässt sich nicht "Anklicken" [gelöst]

Rund um die LCL und andere Komponenten
Antworten
Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1498
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

VirtualStringTreeview, letzter Eintrag lässt sich nicht "Anklicken" [gelöst]

Beitrag von corpsman »

Hallo Zusammen,

ich bastle gerade eine Anwendung in der ich die VirtualStringTreeView ausprobiere. Ansich ist das ding total geil und kann genau was ich will.
Aber leider habe ich hier auf Win10 ein sehr unangenehmes Verhalten.

Wenn ich in der Demo, die ich angehängt habe im Grid nach unten scrole und dann auf den letzten Eintrag klicke, wird der "Click" event nicht ausgelößt. Bei allen anderen aber schon.

Hier quasi als Bild
Fehler.png
Fehler.png (25.8 KiB) 678 mal betrachtet
Könnt ihr mir sagen was ich falsch mache, oder ist das ein Bug der reportet werden soll ?
Dateianhänge
Virtual_StringTreeview_Bug.zip
(2.81 KiB) 28-mal heruntergeladen
Zuletzt geändert von corpsman am Mi 27. Jul 2022, 06:09, insgesamt 1-mal geändert.
--
Just try it


wp_xyz
Beiträge: 4889
Registriert: Fr 8. Apr 2011, 09:01

Re: VirtualStringTreeview, letzter Eintrag lässt sich nicht "Anklicken"

Beitrag von wp_xyz »

Zurück zu dem von theo zitierten Bug-Report (der muss ja auch mal geschlossen werden, und anscheinend kümmert sich niemand darum...). Soner, entferne mal die komplette Methode TBaseVirtualTree.GetClientRect aus Unit virtualtrees. Damit geht's bei mir. Ich habe auf Delphi 10.4 eben den V5-Branch von https://github.com/JAM-Software/Virtual-TreeView installiert, und da gibt es diese Routine auch nicht (der fehler existiert da auch nicht). Allerdings befürchte ich, dass blikblum beim Portieren der V5 nach Lazarus diese nicht aus Spaß eingebaut hat, und es jetzt irgendwo anders kracht...

[EDIT]
Das GetClientRect gibt es seit Urzeiten in blikblum's Version, svn r78 (24. Februar 2007, "Started header implementation")...

Ein Seiteneffekt für den Fall, wenn GetClientRect fehlt, ist dass wenn beim Scrollen mit den Pfeiltasten die letzte Zeile erreicht ist die Markierung mit dem nächsten Tastendruck nach unten "auswandert" und nicht mehr zu sehen ist.

Aber das hatten wir alles schon. Jedenfalls ist der Bug nicht mit einer kleinen Änderung zu beheben...

Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1498
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Re: VirtualStringTreeview, letzter Eintrag lässt sich nicht "Anklicken" [gelöst]

Beitrag von corpsman »

@theo

Danke, ich wusste doch dass es so einfach sein muss ;). Bei den zig Events die das Grid hat, hatte ich den doch glatt übersehen, nun gehts 1a (y)
--
Just try it

Antworten