4个回答
展开全部
有两种方法在TreeView节点上写事件
(1)onchange事件:TreeView1Change(Sender: TObject;
Node: TTreeNode);//注意传进来的Node参数就是TreeView1控件节点
begin
if TreeView1.Selected.Text= Node.Text
begin
//写你的Node节点事件代码
end;
end;
(2)TreeView1MouseDown事件:TreeView1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
Node: TTreeNode;
begin
Node := TreeView1.GetNodeAt(X, Y);//从MouseDown事件中获得TreeView1控 件的节点
if TreeView1.Selected.Text= Node.Text
begin
//写你的Node节点事件代码
end;
end;
注意一点:最好用onchange事件,应为用TreeView1MouseDown事件的弊端是鼠标在TreeView1上MouseDown一次就会执行Node := TreeView1.GetNodeAt(X, Y);占用系统资源,不是一个好算法,建议用onchange事件,这是高手的选择,希望我的回答能对您起到帮助~~~
(1)onchange事件:TreeView1Change(Sender: TObject;
Node: TTreeNode);//注意传进来的Node参数就是TreeView1控件节点
begin
if TreeView1.Selected.Text= Node.Text
begin
//写你的Node节点事件代码
end;
end;
(2)TreeView1MouseDown事件:TreeView1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
Node: TTreeNode;
begin
Node := TreeView1.GetNodeAt(X, Y);//从MouseDown事件中获得TreeView1控 件的节点
if TreeView1.Selected.Text= Node.Text
begin
//写你的Node节点事件代码
end;
end;
注意一点:最好用onchange事件,应为用TreeView1MouseDown事件的弊端是鼠标在TreeView1上MouseDown一次就会执行Node := TreeView1.GetNodeAt(X, Y);占用系统资源,不是一个好算法,建议用onchange事件,这是高手的选择,希望我的回答能对您起到帮助~~~
参考资料: Node: TTreeNode;
展开全部
没有针对单个节点的事件。你必须在onchange中判断是哪个节点,然后对相应的节点操作
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
每个节点没有.
只有在treeview上面写,然后利用itemIndex之类的辅助判断看是哪一个节点
只有在treeview上面写,然后利用itemIndex之类的辅助判断看是哪一个节点
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
delphi中TreeView1控件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询