网站首页 > 技术文章 正文
Python调用UI文件有两种方法,第一种方法在上篇博文已经讲到,将UI文件转换为Python文件,进行调用。
Python Qt GUI设计:将UI文件转换为Python文件的三种妙招(基础篇—2)
今天来聊聊第二种方法:动态加载UI界面。
动态加载UI界面有两种方式。
方式1,代码形式如下所示:
from PySide2.QtWidgets import QApplication,QMessageBox
from PySide2.QtUiTools import QUiLoader
#导入UI方式1
self.ui = QUiLoader().load('XXX.ui')
方式2,代码形式如下所示:
from PySide2.QtWidgets import QApplication,QMessageBox
from PySide2.QtUiTools import QUiLoader
from PySide2.QtCore import QFile
#导入UI方式2
qfile_UIUI = QFile("XXX.ui")
qfile_UIUI.open(QFile.ReadOnly)
qfile_UIUI.close()
self.ui = QUiLoader().load(qfile_UIUI)
接下来我们看看如何具体使用吧。
方式1,代码实现:
from PySide2.QtWidgets import QApplication,QMessageBox
from PySide2.QtUiTools import QUiLoader
class UIUI:
def __init__(self):
self.ui = QUiLoader().load('serial.ui')
app = QApplication([])
uiui = UIUI()
uiui.ui.show()
app.exec_()
方式2,代码实现:
from PySide2.QtWidgets import QApplication,QMessageBox
from PySide2.QtUiTools import QUiLoader
from PySide2.QtCore import QFile
class UIUI:
def __init__(self):
#先导入.ui文件,然后关闭
qfile_UIUI = QFile("serial.ui")
qfile_UIUI.open(QFile.ReadOnly)
qfile_UIUI.close()
# 导入加载的UI类(返回的就是UI界面对应的QWidget窗体对象)
self.ui = QUiLoader().load(qfile_UIUI) # 界面对象
app = QApplication([])
uiui = UIUI()
uiui.ui.show()
app.exec_()
运行我设计的串口调试助手UI,效果如下所示:
动态加载UI界面的方式可以随时更新调测UI,更加方便快捷,大家可以试试。
猜你喜欢
- 2025-06-24 Python调用Docker API的使用方式(pycharm docker 调试)
- 2025-06-24 青少年Python编程系列28:Python中函数的递归调用
- 2025-06-24 python调用sqlite数据库案例(python 调用数据库)
- 2025-06-24 【Python机器学习系列】基于Flask来构建API调用机器学习模型服务
- 2025-06-24 通过pybind11来实现python调用C++接口(一)
- 2025-06-24 Python编程调用Deepseek API创建智能体
- 2025-06-24 python多装饰器针对函数、类、方法的调用顺序说明
- 2025-06-24 Python | Django 外部脚本调用 models 数据库
- 2025-06-24 自学Python第九天——操作列表(python操作步骤)
- 2025-06-24 做Python开发时遇到需求实现,必须调用Java方法,可以这么做
- 06-24Python调用Docker API的使用方式(pycharm docker 调试)
- 06-24青少年Python编程系列28:Python中函数的递归调用
- 06-24python调用sqlite数据库案例(python 调用数据库)
- 06-24【Python机器学习系列】基于Flask来构建API调用机器学习模型服务
- 06-24通过pybind11来实现python调用C++接口(一)
- 06-24Python编程调用Deepseek API创建智能体
- 06-24python多装饰器针对函数、类、方法的调用顺序说明
- 06-24Python Qt GUI设计:Python调用UI文件的两种方法(基础篇—3)
- 270℃Python短文,Python中的嵌套条件语句(六)
- 268℃python笔记:for循环嵌套。end=""的作用,图形打印
- 266℃PythonNet:实现Python与.Net代码相互调用!
- 262℃Python实现字符串小写转大写并写入文件
- 261℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 121℃原来2025是完美的平方年,一起探索六种平方的算吧
- 101℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 95℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
-
- Python调用Docker API的使用方式(pycharm docker 调试)
- 青少年Python编程系列28:Python中函数的递归调用
- python调用sqlite数据库案例(python 调用数据库)
- 【Python机器学习系列】基于Flask来构建API调用机器学习模型服务
- 通过pybind11来实现python调用C++接口(一)
- Python编程调用Deepseek API创建智能体
- python多装饰器针对函数、类、方法的调用顺序说明
- Python Qt GUI设计:Python调用UI文件的两种方法(基础篇—3)
- Python | Django 外部脚本调用 models 数据库
- 自学Python第九天——操作列表(python操作步骤)
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)