0
QFileDialog에서 사용자 지정 컨텍스트 메뉴를 구현하고 싶습니다. 아래의 코드에서 주 창에 컨텍스트 메뉴를 만들 수 있었지만 파일을 선택할 때 메뉴를 표시하고 싶습니다. QFileDialog에서 올바른 위젯을 확인하는 방법 setContextMenuPolicy
을 적용해야합니까?QFileDialog에서 컨텍스트 메뉴
import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
class Window(QWidget):
def __init__(self):
QWidget.__init__(self)
self.myFileDialog = QFileDialog()
self.myFileDialog.setContextMenuPolicy(Qt.CustomContextMenu)
self.myFileDialog.customContextMenuRequested.connect(self.openMenu)
layout = QVBoxLayout()
layout.addWidget(self.myFileDialog)
self.setLayout(layout)
self.action_perso = QAction("MyOwnMenu", self)
self.connect(self.action_perso, SIGNAL("triggered()"), self.test)
def openMenu(self, position):
menu = QMenu()
menu.addAction(self.action_perso)
menu.exec_(self.myFileDialog.mapToGlobal(position))
def test(self):
print("coucou")
if __name__ == "__main__":
app = QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec_())