可以右键点击Treeview的特定node而弹出特定菜单吗?(100分)

  • 主题发起人 主题发起人 kathy
  • 开始时间 开始时间
K

kathy

Unregistered / Unconfirmed
GUEST, unregistred user!
请教各位高手,怎样才能做到选中Treeview的某个node后,
在其上点击右键就弹出特定菜单呢?就象在windows资源管理
器中选中一个文件后,可用右键弹出含"复制","粘贴"等菜单
项的菜单一样.
 
你在TreeView的Click里面自己判断一下,加入一个菜单部
就行了吗!

要程序我下午给你,我要吃饭了
 
你放一个popmenu到你的form然后和treeview连接好
这样完成了第一步
第二,在popupmenu.onpopup事件中用
GetNodeAt(X, Y: Integer),获得当前mouse位置的node.
再根据此node的类型决定popupmenu的某些item.

 
popupMenu.onPopup事件中判断.....
可以用treeView.selected或者getNodeAt获得当前的NOde,然后...
 
哈哈,僧多粥少,看来国内的DELPHI使用水平越来越高了
 
例子来了,不过很简单 :)
放一个poumenu,在pupmenu里面加入Clear , Add ,AddChild,Delete

procedure TForm1.Clear1Click(Sender: TObject);
begin

TreeView1.Items.Clear ;

end;

procedure TForm1.Add1Click(Sender: TObject);
begin
TreeView1.Items.Add(nil, 'AddRootTreeNode');
end;

procedure TForm1.AddChild1Click(Sender: TObject);
begin
TreeView1.Items.AddChild(TreeView1.Selected,'Add Child Note');
end;

procedure TForm1.Delete1Click(Sender: TObject);
begin
TreeView1.Items.Delete(TreeView1.Selected);
end;
 
多谢各位高手相助,不过我觉得OnlyD4的指教更切合我的问题,
所以将我入门以来刚得的200分的一半给他(她)以示谢意.对其
它高手,表示精神上的感激.
 

Similar threads

回复
0
查看
804
不得闲
D
回复
0
查看
825
DelphiTeacher的专栏
D
D
回复
0
查看
831
DelphiTeacher的专栏
D
D
回复
0
查看
664
DelphiTeacher的专栏
D
后退
顶部