contextMenuEvent怎么获取当前控件
时间: 2024-05-28 12:08:59 浏览: 64
的位置和鼠标点击位置?
可以使用event.pos()方法获取鼠标点击的位置,使用self.mapToGlobal(event.pos())方法将控件的局部坐标系转化为全局坐标系,从而获取控件的位置。完整的代码如下:
def contextMenuEvent(self, event):
menu = QMenu(self)
action = menu.addAction("Action")
action.triggered.connect(self.function)
menu.exec_(self.mapToGlobal(event.pos()))
def function(self):
print("You clicked on the action.")
# 获取当前控件的位置
pos = self.mapToGlobal(QPoint(0, 0))
print("Current widget position:", pos.x(), pos.y())
# 获取鼠标点击的位置
click_pos = QCursor().pos()
print("Mouse click position:", click_pos.x(), click_pos.y())
阅读全文