一个关于popupmenu的小问题,高手解救!(100分)

  • 主题发起人 主题发起人 smallshu
  • 开始时间 开始时间
S

smallshu

Unregistered / Unconfirmed
GUEST, unregistred user!
我在form上加了一个treeview,我想在节点出探出menu,在其的地方不谈出。
现在他在任何地方都谈出,不知怎么才能设定旨在treeview的框内弹出?
 
没人回答吗?
 
加个条件判断一下不就可以了吗?
如果在节点上,就弹出,否则就不弹出。
 
什么节点??
同意楼上,判断一下应该了
 
在 treeview的 onContextPopup事件中
procedure TForm1.TreeView1ContextPopup(Sender: TObject;
MousePos: TPoint;
var Handled: Boolean);
begin
Handled:=Not(htOnItem in TreeView1.GetHitTestInfoAt(MousePos.x,MousePos.Y));
end;
 
能说的具体点吗?xeen,这个我已经做了,我的意思是他在treeview的地方点右键还是弹出menu
 
不明白你的意思,上面的代码使只有右键点击节点才弹出菜单.
 
xeen,那个代码确实是在节点出弹出,menu,但是他在treeview以外的地方也弹出。
例如在treeview旁有个listview,在listview上电右件也弹
 
不会吧,你把popmenu指定给treeview,再设定popmenu的autopopuo为true.
 
是呀,我就是这么做的,可是还是不行呀!高人出手呀
 
你的意思好像是为TreeView加一个右键菜单吧,是这样的话,直接给TreeView的popupmenu属性
选一个右键菜单,然后在ContextPopup事件中设置Handle的值,以决定要不要弹出菜单。
 
不必一定要给treeview1的popupmenu属性赋值,在你选中节点时,用弹出菜单的 popup(point.x,point.y)
方法在鼠标处弹,坐标值用getcursorpos(point) 得到
 
同意楼上的,可用于任何地方
 
多人接受答案了。
 
后退
顶部