2016-05-11 12 views
0

Ich habe einen einfachen Code, der ein Fenster mit Symbolleisten macht.Wie deaktivieren Sie die rechte Maustaste in PyQt5 und Widget Problem

from PyQt5.QtWidgets import * 
from PyQt5.QtCore import * 
import sys 

class AnaPencere(QMainWindow): 
    def __init__(self): 
     super().__init__() 
     self.widget = QWidget(self) 
     self.setCentralWidget(self.widget) 

     self.toolBar = QToolBar(self) 
     self.addToolBar(Qt.TopToolBarArea, self.toolBar) 

     self.pushButton1 = QPushButton() 
     self.pushButton1.setText("Open") 
     self.toolBar.addWidget(self.pushButton1) 

     self.toolBar.addSeparator() 
     self.pushButton2 = QPushButton() 
     self.pushButton2.setText("Save") 
     self.toolBar.addWidget(self.pushButton2) 

     self.pushButton3 = QPushButton() 
     self.pushButton3.setText("Save as") 
     self.toolBar.addWidget(self.pushButton3) 
     #t = QToolBar(self) 
     #t.setMovable(False) 

uygulama = QApplication(sys.argv) 
pencere = AnaPencere() 
pencere.show() 
uygulama.exec_() 

Dadurch werden 3 Symbolleisten erstellt. Aber das Problem ist, wenn ich mit der rechten Maustaste auf eine Werkzeugleiste klicke, erscheint ein kleines Fenster und wenn ich auf dieses kleine Fenster klicke, sind alle Werkzeugleisten weg. Wenn ich das gleiche nochmal mache sind Symbolleisten wieder da. Ich möchte nicht, dass Benutzer in der Lage ist, etwas so zu tun, also dachte ich, wenn ich Rechtsklick deaktiviere, wird es behoben, aber ich konnte nicht. Hier das kleine Fenster

enter image description here

Antwort

0
self.toolBar = QToolBar(self) 
self.addToolBar(Qt.TopToolBarArea, self.toolBar) 
self.toolBar.setContextMenuPolicy(Qt.PreventContextMenu) 
Verwandte Themen