首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

treeview 动态增加节点和展开节点的事件解决方案

2012-03-11 
treeview 动态增加节点和展开节点的事件treeview下面的节点是动态增加的,现在的我是想实现点击一个节点,然

treeview 动态增加节点和展开节点的事件
treeview   下面的节点是动态增加的,现在的我是想实现点击一个节点,然后展开这个节点,动态增加这个节点下面的子节点。点击前这个节点下面是没有子节点的。请问这个点击的事件是什么?expanded   和   expanding   只有节点下面有子节点的时候才会发生事件,click事件触发是没有选中节点的时候点击也会触发。请高手指教。

[解决办法]
TreeNode有HasChildren属性
赋值为True就可以看到“+”
在OnExpanding里处理用户点扩展节点的事件
[解决办法]
var
bTv_Roler_Sel := true;//全局

procedure TSysAdmin.TV_Expanded(Sender: TObject; Node: TTreeNode);
begin
bTv_Roler_Sel := true;
end;

procedure TSysAdmin.TV_Collapsed(Sender: TObject; Node: TTreeNode);
begin
bTv_Roler_Sel := true;
end;

procedure TSysAdmin.TVMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
Node: TTreeNode;
begin
if bTv_Roler_Sel then begin
bTv_Roler_Sel := False;
Exit;
end;
Node := TV_Roler.GetNodeAt(X, Y);
if (Node <> nil) and (Node = TV_Roler.Selected) then
chNodeStatueImage(Node);//你要处理的东东
end;

热点排行