用什么函数?是直接用onClick然后在其中判断点击了哪一个item?
解决方案 »
- 散点分,周五上火车前结帖!
- 窗体启动顺序问题!
- API绘图的基础问题
- 关于悬浮图标(窗口)的疑问???
- DBChart小问题烦劳大家
- 为什么用adoquery查询oracle数据表时,会出现:maximum open cursors exceeded
- 请教高手 解决方法:OpenPictureDialog对话框和Image控件问题
- 帮朋友问!
- 多线程多485口通讯,延时冲突,请高手帮忙。
- (详细+说明+源码)热血传奇中周围有怪时如何使寻路终止?(目前需要鼠标点击一下))
- 在线等救急:关于insert into 语句问题?急啊,救救我吧!
- 求救:用adodataset查询判断时出错,发生异常,帮帮我啊
Treeview1.SelectedGetNodeAt(x,y)
是这样的,我想实现这样的功能:窗口上有一个TTreeView控件,运行时点击其中的树型目录,我希望在点击树型目录中的根item时(不包括上级item),触发一个事件,我可以在这个事件中做一些处理,那么这个事件应该是什么?另外,因为根item有好几个,我需要在点击不同根item时候做不同的处理,这个应该怎么写?
谢谢:(
var AllowChange: Boolean);
begin
//这个是在结点改变之前, Node表示将要到的结点, AllowChange表示是否允许改变
end;procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
//这个是结点改变之后, Node表示当前的结点
end;
procedure TForm1.TreeView1Click(Sender: TObject);
begin
if treeview1.Selected.Level<>0 then //这个表示当你选择的不是第一个,也就是你说的(不包括上级item)
begin
写你想要触发的代码事件
end;
end;还有你说的有根item有好几个好几个,需要在点击不同根item时候做不同的处理,这个应该怎么写?
这个简单,假如是这有
1-2
3
4-5
8
那下面代码就可以判断你点几的是4下的还是1下的:
procedure TForm1.TreeView1Click(Sender: TObject);
var thisnode:TTreeNode;
begin
thisnode:=treeview1.select;
where thisnode.Level<>0 do
reeview1.Selected.Level<>0 then //这个表示当你选择的不是第一个,也就是你说的(不包括上级item)
begin
写你想要触发的代码事件
end;
end;
这个简单,假如是这有
1-2
3
4-5
8
那下面代码就可以判断你点几的是4下的还是1下的:
procedure TForm1.TreeView1Click(Sender: TObject);
var thisnode:TTreeNode;
begin
thisnode:=treeview1.select;
where thisnode.Level<>0 do
begin
if thisnode.Level=0 then
begin
if thisnode='1' then 写你想要触发的代码事件
if thisnode='4' then 写你想要触发的代码事件
end;
thisnode:=thisnode.Parent;
end;
end;
具体就这样了,希望对你有帮助
2
procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
if Node.HasChildren then
begin
//你想干的
end;
end;