2020-03-12 PYQT5界面使用QtableView展示Pandas.DataFrame
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2020-03-12 PYQT5界面使用QtableView展示Pandas.DataFrame相关的知识,希望对你有一定的参考价值。
参考技术A pandas数据可以通过设计自定义model,来实现通过QTableView展示数据,实现MVC(模型 - 视图 - 控制器)。以下是收集的两个定义方法,经验证可以直接应用:PyQt5中登录界面跳转到不同界面的使用方式
文章目录
友情连接
一、需求分析
我的需求是不同的角色用户登录系统跳转到不同的界面。例如,学校中学生和教师可以进入的系统是不一样的,他们执行的操作也是不同的!
本需求中是管理元和员工登录界面跳转到不同的界面进行操作!
二、具体实施
2.1 UI文件介绍
- 主要的ui界面文件
上述的xxx.py文件都是先通过xxx.ui文件通过PyUIC工具直接转换生成的!!!
- 工程思路 ⭐
- 首先通过Qtdesigner对所有参与的界面设计【设计界面的布局】
- 对xxx.ui界面文件右击鼠标,选择External Tools中的PyUIC将xxx.ui转文件换为xxx.py文件 ⭐
- 最后在登录界面文件中对xxx.py进行调用即可 【例如在本工程中login.py是登录文件,而admin与staff是两个不同的用户角色,他们登录系统后应该跳转到不同界面,因此需要在login.py中调用与重写】
详情:PyQt5中编程与界面设计分离的两种方式(UI逻辑分离)
-
admin.py文件
该文件中都是对admin.ui文件中各种组件的使用情况代码记录情况,通俗的话说将ui界面控制的方式转换成代码表达出来。【用过TKinter的知道Tk中组件的位置是通过代码来调控的,不是通过鼠标拖拽来布局的!而PyQt5中组件既可以通过QTdesigner进行设计(即鼠标拖拽方式),也可以直接进行代码编写调试。而PyUIC工具则是将QTdesigner中鼠标拖拽的方式用代码生成出来表示。】 -
staff.py文件
该文件功能同admin.py文件中的功能 -
login.py文件
该界面同admin.py文件中的功能
2.2 功能文件介绍
在2.1章节中讲解了工程中所有的ui及其对应的py文件,那有了相关py文件,功能又如何实施呢?如何实现我们所想要的效果呢?
新建
logintoadmin.py
文件,实现上述功能!【文件名起的不是很棒,不要以为就是实现了登录界面到管理员界面的跳转,其实是都实现了上述功能!】
-
logtoadmin.py文件⭐
logintoadmin是桥梁,连接了所有的设计的系统UI界面文件! -
login登录界面
-
代码实现
点击登录按钮如何跳转到不同的界面呢?通过哪个角色被选中来进行判断!
# 登录-》跳转不同界面
def jumptodiff(self):
# print('main - mess:', mess['role'])
if self.radioadmin.isChecked():
self.admin = admin_Dialog() # self.admin 才可以成功!!!⭐⭐
self.admin.show()
self.close()
print("admin-admin")
else:
self.staff = staff_Dialog() # self.staff 才可以成功!!!⭐⭐
self.staff.show()
self.close()
print("staff-staff")
总结
最后的实现的功能相对粗糙些,但是重点是掌握如何实现登录界面到不同界面的跳转!
以上是关于2020-03-12 PYQT5界面使用QtableView展示Pandas.DataFrame的主要内容,如果未能解决你的问题,请参考以下文章