2015-02-12 5 views
0

Я собираюсь начать кодирование графического интерфейса с помощью Python и Qt с помощью PySide.Python PySide modal Qdialog без декодирования ОС (строка заголовка, ...)

Я использую Qt-creator для генерации ui для своего приложения.

Мне нужен диалог без оформления os, такой заголовок, строка состояния, ... И этот диалог должен быть модальным или, по крайней мере, должен закрываться, когда я выхожу за пределы его границ.

поведение

модальной выставиться на кварт-творца: Dialog.setWindowModality (QtCore.Qt.WindowModal) Dialog.setModal (True)

в моем питона кода I'am с помощью:

def handle_menu(self): 
    self.menu = QtGui.QDialog(self) 
    menuUi = menuDialog.Ui_Dialog() 
    menuUi.setupUi(self.menu) 
    self.menu.setWindowFlags(QtCore.Qt.CustomizeWindowHint) # Hide the OS decorations 
    self.menu.show() 

Таким образом, параметр Modal не работает, если я комментирую команду setWindowFlags, то Modal Dialog работает, но отображается строка заголовка.

ответ

1

Я решил использовать эту команду:

self.menu.setWindowFlags(QtCore.Qt.SplashScreen | QtCore.Qt.FramelessWindowHint) 

Вместо этого:

self.menu.setWindowFlags(QtCore.Qt.CustomizeWindowHint) # Hide the OS decorations