【发布时间】:2019-03-10 04:14:10
【问题描述】:
我开始使用 PyQt5 学习 OOP,所以我试图用一个按钮创建一个窗口,当单击该按钮时,我想显示一个新窗口。我写了这段代码,但它不起作用,它只是显示带有按钮的窗口,但按钮没有做任何事情,看起来它只是在等待,但它也没有给我任何错误
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QVBoxLayout
class Window2(QWidget):
def __init__(self, parent=None):
super(Window2, self).__init__(parent)
class Window(QWidget):
def __init__(self, parent=None):
super(Window, self).__init__(parent)
self.init_ui()
def init_ui(self):
self.btn = QPushButton("Push Me")
layout = QVBoxLayout()
layout.addWidget(self.btn)
self.setLayout(layout)
self.setWindowTitle("PyQt5 double window")
self.btn.clicked.connect(self.btn_clk)
self.newindow = Window2(self)
self.show()
def btn_clk(self):
self.newindow.show()
app = QApplication(sys.argv)
a_window = Window()
sys.exit(app.exec_())
这个问题指导了我PyQT: how to open new window,但它是用 PyQt4 编写的,我不确定这两者之间的区别。
【问题讨论】: