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/)
-   -   TVirtualStringTree nach loadfrmfile offset für Image falsch (https://www.delphipraxis.net/212378-tvirtualstringtree-nach-loadfrmfile-offset-fuer-image-falsch.html)

stalkingwolf 1. Feb 2023 11:48


TVirtualStringTree nach loadfrmfile offset für Image falsch
 
Liste der Anhänge anzeigen (Anzahl: 1)
Wir laden mit loadfromfile die Inhalte für TVirtualStringTree aus einer Datei.

Dabei ist aufgefallen das dabei der Offset für das Zeichen des Images danach falsch ist. Es sitzt ein paar Pixel zu tief.
Das gilt nicht nur für das Image welches man selber angezeigt, sondern auch für die Elemente vom TVirtualStringTree selber. Z.b das Image zum aufklappen der Childs sitzt zu tief.
Fügt man danach noch eine Node dazu passt bei er Node alles. Das Problem tritt auch nur auf der Root auf. Bei den Childs ist wieder ok.

Das ist aufgefallen, weil wir die Schriftart vergrößert und damit die DefaultNodeHeight erhöht haben.
Vorher war es mal 16 nun soll es 24 sein. Das Image ist damit fast nicht mehr sichtbar. Ebenfalls das Icon zum aufklappen.

Irgendwie finde ich aber nichts wie man Einfluss auf das Zeichnen des Images hat.
Es wird nur mit onGetImageIndex der Index aus einer Imagelist zugewiesen.

Anbei ein Bild wie das ausschaut.

Aviator 1. Feb 2023 20:23

AW: TVirtualStringTree nach loadfrmfile offset für Image falsch
 
Kannst du evtl. ein Minimal-Beispiel anhängen in dem das verdeutlicht wird? So ganz ohne irgendwelchen Code und nur anhand eines Screenshots ist es recht schwer, hier etwas zu sagen. Gründe kann das theoretisch ja viele haben. Komplett selbst zeichnen kann man die Nodes mit den entsprechenden Draw Events schon. Aber ich vermute mal, dass alles vom Tree gemalt werden soll und du nur beim Zeichnen mit größeren Images "eingreifen" willst.

anse 2. Feb 2023 06:23

AW: TVirtualStringTree nach loadfrmfile offset für Image falsch
 
Die vorgegebene DefaultNodeHeight ist eigentlich 18, nicht 16. Benutzt du evtl. eine ältere Version? Das Projekt ist ja weiter recht aktiv, vielleicht hilft dir ein Update der VirtualTree Sourcen.

stalkingwolf 3. Feb 2023 09:36

AW: TVirtualStringTree nach loadfrmfile offset für Image falsch
 
Zitat:

Zitat von anse (Beitrag 1518195)
Die vorgegebene DefaultNodeHeight ist eigentlich 18, nicht 16. Benutzt du evtl. eine ältere Version? Das Projekt ist ja weiter recht aktiv, vielleicht hilft dir ein Update der VirtualTree Sourcen.

das offensichtlichste hat das Problem gelöst.
Hatten die Version 7.6.1 die neueste ist 7.6.3 und dort ist es behoben.
Unter Issues stand nichts, daher habe ich nichts neu heruntergeladen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:09 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