仅作为操作记录,大佬请跳过。
文章目录
思路
建立两个ui界面、两个button事件,main文件写按钮函数
a.show()
b.hide()
详细步骤——代码可直接运行
0、界面类型博主选择Widget
1、新建主窗体mainform.ui
,只放一个pushButton;建立pushButton_click()
(此步详细完全按照 参考博主文章传送门)
2、新建子窗体subform.ui
,放一个pushButton,一个textedit;建立pushButtonsub_click()
(此步详细完全按照 参考博主文章传送门)
3、自动生成两个界面的python代码mainform.py、subform.py
(此步完全按照上面传送门文章的第二步)
4、新建main.py
文件,放入代码:
import sys
from PyQt5 import QtWidgets
from PyQt5.QtCore import pyqtSignal
from mainform import Ui_Form
from subform import Ui_Formsub
class mainwinclass(QtWidgets.QWidget,Ui_Form):
show_sub_win_signal = pyqtSignal() # 该信号用于展示子窗体
def __init__(self):
super(mainwinclass,self).__init__()
self.setupUi(self)
def pushButtonmain_click(self):
self.show_sub_win_signal.emit()
class subwinclass(QtWidgets.QWidget,Ui_Formsub):
show_main_win_signal = pyqtSignal() # 该信号用于展示子窗体
def __init__(self):
super(subwinclass,self).__init__()
self.setupUi(self)
def pushButtonsub_click(self):
self.show_main_win_signal.emit()
def show_sub():
b.show()
a.hide()
def show_main():
a.show()
b.hide()
if __name__ == '__main__':
app=QtWidgets.QApplication(sys.argv)
a=mainwinclass()
a.show()
b=subwinclass()
a.show_sub_win_signal.connect(show_sub)
b.show_main_win_signal.connect(show_main)
sys.exit(app.exec_())
即可运行
展示
点击按钮后,进入第二个界面
参考
感谢大佬博主传送门