使用virtualstringtree组件delphi中的重复图像

问题描述 投票:0回答:1

我使用 virtualstringtree 组件。此代码图像将显示重复。我该如何解决它?

duplicate icon

procedure TFAbzarCode.VST1GetImageIndex(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex;
  var Ghosted: Boolean; var ImageIndex: TImageIndex);
var
  NodeData: ^rTreeData;
  MImageIndex:integer;
begin
  NodeData := Sender.GetNodeData(Node); 
  ImageIndex:=NodeData.ImageIndex;
end;

我想在文本一侧仅显示一个图标(图像)

delphi tree
1个回答
0
投票

嗨,我使用此代码,问题已修复

procedure TvTreeControl.vTreeGetImageIndex(Sender: TBaseVirtualTree; Node: PVirtualNode; Kind: TVTImageKind; Column: TColumnIndex; var Ghosted: Boolean; var ImageIndex: Integer);
    var pNode  : PNodeRec;
    begin
         ImageIndex := -1;
         if Assigned(Node) then
              begin
              pNode  := Sender.GetNodeData( Node);
              if pNode.NodeData <> NIL then
                   begin
                   if Kind <> TVTImageKind(2)then
                        ImageIndex := pNode.NodeData.ImageIndex;
                   end;
              end;
    end;
© www.soinside.com 2019 - 2024. All rights reserved.