已有183人关注
PyQt5 逻辑与界面分离问题
发表在Python图书答疑 2022-10-27 《PyQt5&Python游戏开发》第16章 学生成绩管理系统(PyQt5+MySQL+PyMySQL模块实现)
是否精华
版块置顶:
loginFunc.py

import login
from PyQt5 import QtWidgets

class loginWindow(login.Ui_MainWindow):
    def __init__(self):
        super(loginWindow, self).__init__()

    def setupUi(self, MainWindow):
        super().setupUi(MainWindow)





test.py
import loginFunc
from PyQt5 import QtCore, QtGui, QtWidgets
import sys

# Press the green button in the gutter to run the script.
if __name__ == '__main__':
    app = QtWidgets.QApplication(sys.argv)
    mainWindow = QtWidgets.QMainWindow()
    main_Ui = loginFunc.loginWindow()
    main_Ui.setupUi(mainWindow)
    mainWindow.show()
    sys.exit(app.exec_())

最后一章学生系统的代码,我想要实现逻辑代码与界面分离的功能。


首先我新建了个loginFunc.py,并在里面新建了个loginWindow()类继承login包里的Ui_MainWindow()


再新建了test.py文件,把程序入口放在test.py里面


执行程序后进入登录界面时报错了

Traceback (most recent call last):

  File "E:\Code(源码)\16\StudentMS\login.py", line 74, in openMain

    MainWindow.hide() # 隐藏当前的登录窗体

NameError: name 'MainWindow' is not defined. Did you mean: 'Ui_MainWindow'?


这个是为什么?

分享到:
精彩评论 1
小禾斗
学分:7308 LV13
TA的每日心情
奋斗
2017-04-21 14:00:25
2022-10-27
沙发
class loginWindow(QtWidgets.QMainWindow, Ui_MainWindow):
首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照