AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi VirtualStringTree mit eingebetteten Controls in Selection?

VirtualStringTree mit eingebetteten Controls in Selection?

Ein Thema von sh17 · begonnen am 26. Jun 2008 · letzter Beitrag vom 26. Jun 2008
Antwort Antwort
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.592 Beiträge
 
Delphi 11 Alexandria
 
#1

VirtualStringTree mit eingebetteten Controls in Selection?

  Alt 26. Jun 2008, 10:07
Hallo,

gibt es irgend einen Ansatz, die Komponente VirtualStringTree/VirtualDrawTree (oder überhaupt Listcontrols) dahingehend zu erweitern, das die aktuell ausgewählte Zeile um andere Controls erweitert wird? z.B. um Buttons oder Labels.

In WPF klappt das ja super einfach. Nur mit Win32 muss man wahrscheinlich einmal zum Mond und zurück.

Sven
Sven Harazim
--
  Mit Zitat antworten Zitat
Benutzerbild von stOrM
stOrM

Registriert seit: 7. Jun 2003
Ort: Mülheim an der Ruhr
434 Beiträge
 
Delphi 10.3 Rio
 
#2

Re: VirtualStringTree mit eingebetteten Controls in Selectio

  Alt 26. Jun 2008, 10:35
Hi,
ich bin mir jetzt nicht sicher ob ich die Frage richtig verstanden habe, aber wenn es darum geht andere Controls wie z.b. eine Progressbar im VST anzuzeigen für jede Node dann wird das ungefähr so gemacht:

Delphi-Quellcode:
type
  TNodeData = record
    Bar : TProgressBar;
    Caption : String;
    //das mit dem Record hab ich mir so angewöhnt :)
  end;
  PNodeData = ^TNodeData;

procedure Tform_Main.btn_AddItemClick(Sender: TObject);
var
  Node : PVirtualNode;
  NData : PNodeData;
begin
  Tv.BeginUpdate;

  Node:=Tv.AddChild(tv.RootNode);

  NData:=Tv.GetNodeData(Node);
  
  NData.Caption:=TimeToStr(Now);
  NData.Bar:=TProgressBar.Create(TV);
  NData.Bar.Parent:=Tv;
  Ndata.Bar.Position:=Random(Ndata.Bar.Max);

  Tv.EndUpdate;
end;

procedure Tform_Main.TVAfterCellPaint(Sender: TBaseVirtualTree;
  TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex;
  CellRect: TRect);
var
  NData : PNodeData;
begin
  if Column=1 then
  begin
    NData:=Tv.GetNodeData(Node);

    if Assigned(NData) then
    begin
      CellRect:=Tv.GetDisplayRect(Node,Column,false);
      NData.Bar.Left:=CellRect.Left;
      Ndata.Bar.Top:=CellRect.Top;
      NData.Bar.Width:=CellRect.Right-CellRect.Left;
      NData.Bar.Height:=CellRect.Bottom-CellRect.Top;
      //Ndata.Bar.PaintTo(TargetCanvas,CellRect.Left,CellRect.Top);
    end;
  end;
end;

procedure Tform_Main.TVGetText(Sender: TBaseVirtualTree; Node: PVirtualNode;
  Column: TColumnIndex; TextType: TVSTTextType; var CellText: WideString);
var
  NData : PNodeData;
begin
  NData:=Tv.GetNodeData(Node);
  CellText:=NData.Caption;
end;
Viele Grüsse
s!
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.592 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: VirtualStringTree mit eingebetteten Controls in Selectio

  Alt 26. Jun 2008, 11:15
genau das meine ich, danke.

Ich probiers aus.

Sven
Sven Harazim
--
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12: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