1. 程式人生 > >Eric6與pyqt5學習筆記 12 右鍵選單事件

Eric6與pyqt5學習筆記 12 右鍵選單事件

這個問題搜尋了很久,沒得到什麼有效的答案,雖然花了很久,還是摸索出了可行的方案,在這裡與大家分享

首先在init設定按鈕的樣式

self.menuBar = QtWidgets.QMenuBar(MainWindow)
self.menuBar.setGeometry(QtCore.QRect(0, 0, 606, 26))
self.menuBar.setObjectName("menuBar")

再建立右鍵選單函式

 def rightMenuShow(self):
        rightMenu = QtWidgets.QMenu(self.menuBar)

        self.actionreboot
= QtWidgets.QAction(MainWindow) self.actionreboot.setObjectName("actionreboot") self.actionreboot.setText(QtCore.QCoreApplication.translate("MainWindow", "重新開機")) rightMenu.addAction(self.actionreboot) rightMenu.exec_(QtGui.QCursor.pos())

最後在init的時候進行繫結

self.tableWidget.setContextMenuPolicy(QtCore
.Qt.CustomContextMenu) self.tableWidget.customContextMenuRequested['QPoint'].connect(self.rightMenuShow)

這樣就可以使用右鍵選單功能

效果圖
這裡寫圖片描述