![]() |
VirtualTreeView - Checkbox disablen
In der VirtualTreeView kann man sich doch solch nette CheckBoxen einblenden lassen, nun soll aber nicht immer der Wert (dat Häckchen) verändert werden können und dieses (die Nichtänderbarkeit) soll auch sichtbar sein.
Leider konnte ich aber keine Möglichkeit finden eine disablete Checkbox dort anzeigen zu lassen. Derzeit hab ich mir dafür den angeklicken Unchecked-State mißbraucht und das Ändern intern unterbunten, aber eine richtig disablete Box gefiehle mir dennoch besser. Falls da jemand zufällig 'nen Rat weiß .... biette melden. Es geht mir aktuell um die Dateiliste dieses Programms: ![]() |
Re: VirtualTreeView - Checkbox disablen
Hallo Frank,
ich kann es gerade nicht ausprobieren, aber genügt nicht schon das Hinzufügen von vsDisabled zur Eigenschaft States des Knoten? Grüße vom marabu |
Re: VirtualTreeView - Checkbox disablen
hmmm, ausprobiert hab ich das zwar noch nicht (werd's dann dennoch mal versuchen),
aber wenn das dann den gesamten Eintrag disabled, dann wäre es nicht so gut ... die Schrift sollte sich zumindestens nicht mit ändern und die Popups müssen auch noch anklickbar sein (darum hab ich ja bisher auch nur zur Checkbox was gesucht). |
DP-Maintenance
Dieses Thema wurde von "Phoenix" von "Programmieren allgemein" nach "VCL / WinForms / Controls" verschoben.
Geht um Komponenten |
Re: VirtualTreeView - Checkbox disablen
Liste der Anhänge anzeigen (Anzahl: 1)
So, wie ich nun bemerkte, hatte ich es doch schonmal mit Disabled versucht, allerdings lief dann garnichts mehr.
Sobald ich es versuche, kommt ein netter Fehler: :wall: Und daß da der Fehler bei mir liegen könnte kann ich auch behaupten. Hab ja nur eine ImageList angegeben und rücke über OnGetImageIndex den entsprechenden ImageIndex raus. |
Re: VirtualTreeView - Checkbox disablen
Delphi-Quellcode:
kann keine probleme feststellen.
var
node: PVirtualNode; begin node:=VirtualStringTree1.AddChild(nil); VirtualStringTree1.CheckType[node]:=ctCheckBox; VirtualStringTree1.IsDisabled[node]:=true; end; imho sollte man es vermeiden die states direkt zu verändern. aber besten immer über die passenden properties verändern. |
Re: VirtualTreeView - Checkbox disablen
Ich versuch's mal so.
Derzeit ändere ich ja erstmal alles direkt im Node und sage dann dem VST daß es Änderungen gab ... eigenlich sollte es so doch auch gehen :grübel: |
Re: VirtualTreeView - Checkbox disablen
Also, ich hab es jetut nochmal mit dem Disabled versucht, allerdings dabei mal keine Bilder eingeblendet, also onGetImageIndex unbearbeitet (ohne ImageIndex-Zuweisung) übergangen.
Und schon tritt der Fehler nicht mehr auf. Es demnach wohl liegt an den Bildern. :gruebel: Ich hab es auch schon mit verschiedenen vormaten versucht 4-Bit, 256-farbig und TrueColor ... keine Änderung. @generic: hattes du da auch Bilder mit drin? |
Re: VirtualTreeView - Checkbox disablen
Liste der Anhänge anzeigen (Anzahl: 3)
So, nichtmal in 'nem einfachen Test läuft es :cry:
(siehe Anhang) Inzwichen weiß ich, daß die Variable Images (siehe markierte Fehlerzeile im Bild) NIL ist und demnach auch nichts zugewiesen werden kann. Was nicht existiert, kann auch nicht genutzt werden ...
Delphi-Quellcode:
TBaseVirtualTree.PaintImage(var PaintInfo: TVTPaintInfo; ...
PaintInfo.ImageInfo[iiOverlay].Images = nil |
Re: VirtualTreeView - Checkbox disablen
*push* (und wehe einer meckert :stupid: )
Ich hab halt immernoch keine Lösung, also wenn wer was weiß.... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:08 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