events_3.py 683 B

123456789101112131415161718192021222324252627
  1. import sys
  2. from PyQt5.QtWidgets import QMainWindow, QMenu, QAction, QApplication
  3. from PyQt5.QtCore import Qt, pyqtSlot
  4. class MainWindow(QMainWindow):
  5. def __init__(self):
  6. super().__init__()
  7. self.setContextMenuPolicy(Qt.CustomContextMenu)
  8. self.customContextMenuRequested.connect(self.on_content_menu)
  9. def on_content_menu(self, pos):
  10. context = QMenu(self)
  11. context.addAction(QAction("test1", self))
  12. context.addAction(QAction("test2", self))
  13. context.addAction(QAction("test3", self))
  14. context.exec_(self.mapToGlobal(pos))
  15. app = QApplication(sys.argv)
  16. window = MainWindow()
  17. window.show()
  18. sys.exit(app.exec_())