当前位置: 代码迷 >> PB >> PopMenu(xpos,ypos) 弹出来的位置不正确定。如何破
  详细解决方案

PopMenu(xpos,ypos) 弹出来的位置不正确定。如何破

热度:241   发布时间:2016-04-29 06:33:14.0
PopMenu(xpos,ypos) 弹出来的位置不正确定。怎么破。
在界面触发右键。可以正确的显示菜单的位置。
但是在数据窗口的右键中显示的位置就不正确了,跑到其它地方去了。
请问在子窗口,如datawindow中如果正确显示右键菜单的位置。
xpos ,ypos 是鼠标位置 

代码如下:
m_rightpop m
m = create m_rightpop
m.m_right.PopMenu(xpos,ypos)
destroy m 


请大神指点。

------解决方案--------------------
引用:
在界面触发右键。可以正确的显示菜单的位置。
但是在数据窗口的右键中显示的位置就不正确了,跑到其它地方去了。
请问在子窗口,如datawindow中如果正确显示右键菜单的位置。
xpos ,ypos 是鼠标位置 

代码如下:
m_rightpop m
m = create m_rightpop
m.m_right.PopMenu(xpos,ypos)
destroy m 


请大神指点。


假如窗口名为w_1,你可以这么写

m_rightpop m
m = create m_rightpop
m.m_right.PopMenu(w_1.xpos, w_1.ypos)
destroy m 
------解决方案--------------------
m_rightpop m
m = create m_rightpop
m.m_right.PopMenu(parent.pointerX(),parent.pointerY())
destroy m 
------解决方案--------------------
要看你的表单是什么的类型的
------解决方案--------------------
你把你的window的图片传上来

不然不知道你的数据窗口已经多少层了,也不知道你鼠标右键的位置,是dataobject的哪个区域

因为是 要加上 数据窗口的 head 或者 detail的height值,还得处理数据窗口横竖滚动条的滚动距离。


------解决方案--------------------
一楼
m.m_right.PopMenu(w_1.xpos, w_1.ypos)
二楼
m.m_right.PopMenu(parent.pointerX(),parent.pointerY())
组合一下就可以了

m.m_right.PopMenu(w_1.pointerX(), w_1.pointerY())