VirtualStringTree Delphi 中的重复图像

pes8fvy9  于 9个月前  发布在  其他
关注(0)|答案(1)|浏览(103)

我使用TVirtualStringTree组件。使用此代码,图像将显示重复。我如何修复它?


的数据

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;

字符串
我只想要一个图标旁边的文字

j9per5c4

j9per5c41#

这段代码解决了这个问题。

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;

字符串

相关问题