如何在pyqt5下為QListWidget添加右鍵菜單?能百度到的均是pyqt4下的,有些貌似並不好用。在嘗試了很多方法後,下麵貼出可用的方法:from PyQt4 import QtCore, QtGui首先創建右鍵菜單:#創建右鍵菜單def rightMenuShow(self): r...
如何在pyqt5下為QListWidget添加右鍵菜單?
能百度到的均是pyqt4下的,有些貌似並不好用。
在嘗試了很多方法後,下麵貼出可用的方法:
from PyQt4 import QtCore, QtGui
首先創建右鍵菜單:
#創建右鍵菜單 def rightMenuShow(self): rightMenu = QtGui.QMenu(self.listView1) removeAction = QtGui.QAction(u"刪除", self, triggered=self.close) # triggered 為右鍵菜單點擊後的激活事件。這裡slef.close調用的是系統自帶的關閉事件。 rightMenu.addAction(removeAction) addAction = QtGui.QAction(u"添加", self, triggered=self.addItem) # 也可以指定自定義對象事件 rightMenu.addAction(addAction) rightMenu.exec_(QtGui.QCursor.pos())
然後在init的時候進行綁定:
self.list_widget.setContextMenuPolicy(Qt.CustomContextMenu) self.list_widget.customContextMenuRequested[QtCore.QPoint].connect(self.rightMenuShow)
這樣就可以使用右鍵菜單功能了。
不過這裡每種不足的是,滑鼠不管是否在item上還是空白處都會有右鍵選項。還想請教大大們,這裡怎麼處理。
謝謝這兩篇博客給出的參考:
http://www.cnblogs.com/yogalau/p/3954042.html?utm_source=tuicool&utm_medium=referral
http://blog.163.com/ctcg326%40126/blog/static/7581291020124510012118/