Delphi 有没有一种方法可以显示>;尚未添加子项时是否有TTreeNode的符号?

Delphi 有没有一种方法可以显示>;尚未添加子项时是否有TTreeNode的符号?,delphi,c++builder,vcl,Delphi,C++builder,Vcl,我在t预览对象中显示项目。当项目有子项时,控件会在图标旁边绘制一个(或向下箭头,如果展开) 我想知道我是否可以告诉物品以某种方式绘制,即使没有添加任何子项(尚未添加) 在我的软件中有一些特定的条件,在这些条件下,向用户显示有子项是有意义的,而不需要实际添加子项(当选择项目时就会这样做) 使用C++ Builder 2009 VCL,但这个Q也适用于Delphi。 < P> VCL, TTreeNode < /C> >具有一个属性: 指示节点是否有子节点 如果节点有子节点,HasChildren为

我在<代码>t预览对象中显示项目。当项目有子项时,控件会在图标旁边绘制一个
(或向下箭头,如果展开)

我想知道我是否可以告诉物品以某种方式绘制
,即使没有添加任何子项(尚未添加)

在我的软件中有一些特定的条件,在这些条件下,向用户显示有子项是有意义的,而不需要实际添加子项(当选择项目时就会这样做)


使用C++ Builder 2009 VCL,但这个Q也适用于Delphi。

< P> VCL,<代码> TTreeNode < /C> >具有一个属性:

指示节点是否有子节点

如果节点有子节点,
HasChildren
为true,如果节点没有子节点,则为false。如果树视图的
ShowButtons
为true,并且
HasChildren
为true,则折叠节点时会在节点左侧显示一个加号(+)按钮,展开节点时会显示一个减号(-)按钮

注意:如果节点没有子节点,将
HasChildren
设置为true将显示一个(+)加号按钮,但不会添加任何子节点,并且节点无法展开。

因此,在为节点创建实际子节点之前,可以将节点的
haschilds
设置为true。然后,确定节点是否有任何实际的子节点后,如果没有子节点,可以将
haschilds
重置为false


不管上面的文档有什么建议,尝试扩展没有子节点但将
haschilds
设置为true的节点至少会触发
t预览.OnExpanding
事件。这是一个填充实际子节点并更新
haschilds

的好地方,可能需要添加一个空项(无标题,无图像),当取到实际的子对象并在@Jerrydoge的一个扩展可能的副本中显示完全可能时,您就会丢弃它。我不认为这是一个重复的编号。肯定有重叠,但Q来自不同的角度,并且接受的答案也不同。