Попытка сделать мое первое приложение PyQt5, и когда я нажимаю кнопку, код запускается, но мое окно параметров не появляется на экране.
#!/usr/bin/env python3
import sys
from PyQt5.QtWidgets import QWidget, QDesktopWidget, QApplication, QLabel, QPushButton, QVBoxLayout
from PyQt5.QtGui import QPixmap, QIcon
from PyQt5.QtCore import QSize
class MainWindow(QWidget):
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent)
self.initUI()
def initUI(self):
self.setWindowTitle('Main Window')
label = QLabel(self)
pixmap = QPixmap('background.png')
label.setPixmap(pixmap)
self.resize(pixmap.width(), pixmap.height())
self.initButtons()
self.center()
self.show()
def initButtons(self):
self.button = QPushButton('', self)
# button style things...
self.button.clicked.connect(self.handleButton)
self.dialog = OptionsWindow(self)
def handleButton(self):
self.dialog.show()
def center(self):
qr = self.frameGeometry()
cp = QDesktopWidget().availableGeometry().center()
qr.moveCenter(cp)
self.move(qr.topLeft())
class OptionsWindow(QWidget):
def __init__(self, parent=None):
super(OptionsWindow, self).__init__(parent)
self.setWindowTitle("Options")
self.resize(200,200)
self.center()
self.show()
def center(self):
qr = self.frameGeometry()
cp = QDesktopWidget().availableGeometry().center()
qr.moveCenter(cp)
self.move(qr.topLeft())
def main():
app = QApplication(sys.argv)
main = MainWindow()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
Я что-то упустил?Я пробовал разные вещи, такие как удаление «центральной» функциональности, удаление фонового изображения и т. Д., Но по-прежнему не появляется второе окно при нажатии кнопки