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 VirtualStringTree, Checkbox "anhackeln" über Zeilen click (https://www.delphipraxis.net/111735-virtualstringtree-checkbox-anhackeln-ueber-zeilen-click.html)

Centrii 8. Apr 2008 16:07


VirtualStringTree, Checkbox "anhackeln" über Zeile
 
hi,

Ich suche jetzt schon ewig nach einem Beispiel wie ich ein VirtualStringTree dazu bringen kann,
bei einem Click auf die Zeile die Checkbox der Zeile "anzuhackeln". Standard mäßig wird die
Checkbox nur bei einem direkten Click auf die Checkbox aktiviert.

Ich finde nichts dazu, vielleicht geht das auch gar nicht ?!?!

Wenn jemand weiß wie das geht, würde ich mich echt freuen

Gruß Ruben

MrKnogge 8. Apr 2008 16:40

Re: VirtualStringTree, Checkbox "anhackeln" über Z
 
Ungetestet:
Delphi-Quellcode:
procedure TFrmMain.VSTClick(Sender: TObject);
begin
  if VST.CheckState[VST.GetFirstSelected] = csCheckedNormal then
    VST.CheckState[VST.GetFirstSelected] := csUnCheckedNormal
  else
    VST.CheckState[VST.GetFirstSelected] := csCheckedNormal;
end;

Centrii 9. Apr 2008 06:58

Re: VirtualStringTree, Checkbox "anhackeln" über Z
 
super, das funktioniert...
Ich danke Dir MrKnogge :-D

Centrii 10. Apr 2008 07:01

Re: VirtualStringTree, Checkbox "anhackeln" über Z
 
für diejenigigen die das auch nutzen wollen...
Eine kleine Änderung ist nötig

Delphi-Quellcode:
procedure TfMain.Tree1Checking(Sender: TBaseVirtualTree; Node: PVirtualNode; var NewState: TCheckState;
  var Allowed: Boolean);
begin
  Tree1.ClearSelection;
end;

procedure TfMain.Tree1Click(Sender: TObject);
begin
  if Tree1.SelectedCount > 0 then begin
    if Tree1.CheckState[Tree1.GetFirstSelected] = csCheckedNormal then
      Tree1.CheckState[Tree1.GetFirstSelected] := csUnCheckedNormal
    else
      Tree1.CheckState[Tree1.GetFirstSelected] := csCheckedNormal;
  end;
end;
Gruß Ruben


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