OzMod
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору [more] у меня Python 3.2.5... Помогите как мне сделать , что бы когда у меня появляеться модальное окно что бы главное окно скрывалось а когда я закрываю модальное окно то главное окно опять появлялось... Скрыть то у меня получаеться ( window.hide() а вот как показать после закрытия модального окна тут проблемка ) вот скрипт примера from PyQt4 import QtGui, QtCore import sys def Show_Modal_Window(): # Задаём функцию вывода окна в центре ModalWindow_center = QtGui.QWidget(window,QtCore.Qt.Window) # Создание модульного окна и привязка к главному окну ModalWindow_center.setWindowTitle('Модальное окно') # Текст в заголовке окна sizeX, sizeY = (483,480) # Задаём переменные размера окна posX, posY = (WinPos.width() - sizeX) // 2 ,(WinPos.height() - sizeY) // 2 # Высчитываем середину экрана ModalWindow_center.setGeometry(posX,posY,sizeX,sizeY) # setFixedSize(x,y- Фиксированный размер окна) resize Размер окна или setGeometry(x,y,Ширина,Высота) ModalWindow_center.setWindowFlags(QtCore.Qt.Window | QtCore.Qt.MSWindowsFixedSizeDialogHint) # Тип окна (Widget,Window,Dialog,Sheet,Drawer,Popup,Tool,ToolTip,SplashScreen,Desktop,SubWindow ModalWindow_center.setWindowModality(QtCore.Qt.WindowModal) # В этом методе указываются флаги конфигурации: QtCore.Qt.WindowModal -> окно является Модальным и NonModal -> окно не является Модальным ModalWindow_center.setAttribute(QtCore.Qt.WA_DeleteOnClose, True) # Удаляем объект окна при при закрытии окна #----- ModalWindow_center.setToolTip('Окно - Всплывающая подсказка') # Задаём всплывающую подсказку для окна ModalWindow_center.show() # Показать окно app = QtGui.QApplication(sys.argv) # Принимает список параметров переданных командной строке window = QtGui.QWidget() # Создание окна window.setWindowTitle('Заголовок окна') # Текст в заголовке окна WinPos = QtGui.QApplication.desktop() # Определение размера экрана sizeX, sizeY = (300, 70) # Задаём переменные размера окна posX, posY = (WinPos.width() - sizeX) // 2 ,(WinPos.height() - sizeY) // 2 # Высчитываем середину экрана window.setGeometry(posX,posY,sizeX,sizeY) # setFixedSize(x,y- Фиксированный размер окна) resize Размер окна или setGeometry(x,y,Ширина,Высота) window.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.MSWindowsFixedSizeDialogHint) # Тип окна (Widget,Window,Dialog,Sheet,Drawer,Popup,Tool,ToolTip,SplashScreen,Desktop,SubWindow #--Кнопки-- BtnWindow = QtGui.QPushButton('&Модальное окно') #----- vbox = QtGui.QVBoxLayout() # Задаём метод растагивания виджетов в нутри окна vbox.addWidget(BtnWindow) # Привязываем кнопку к методу QVBoxLayout() window.setLayout(vbox) # Привязка окна к методу QVBoxLayout() #----- QtCore.QObject.connect(BtnWindow, QtCore.SIGNAL("clicked()"), Show_Modal_Window) # Метод обработки нажатия #---- window.show() # Показываем окно sys.exit(app.exec_()) |