pycharm里用qtdesigner做了两个界面a和b,如何用信号与槽从a点击按钮后跳转至b?
还是要用pyuic转成.py文件后在代码中修改? 展开
要转成py文件。
qtdesigner不能跨文件。
你首先要pyuic5 -o <编译后的文件名>.py <编译前的文件名>.ui
然后
代码走起~
from a_ui import Ui_MainWindow as A_Ui
# a界面的库
from a_ui import Ui_MainWindow as B_Ui
# b界面的库
from PyQt5 import QtCore, QtGUi, QtWidget
class AUi(QtWidgets.QMainWindow, A_Ui):
def __init__(self):
super(AUi, self).__init__()
self.setupUi(self)
class BUi(QtWidgets.QMainWindow, B_Ui):
def __init__(self):
super(BUi, self).__init__()
self.setupUi(self)
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
a = AUi()
a.show()
b = BUi()
# button是你定义的按钮
# !!!!!!严重危险警告:按钮被按下的信号是clicked
# 按下后hide a窗口,show b窗口
a.button.clicked.connect(lambda:{a.hide(), b.show()})
sys.exit(app.exec_())