当前位置: 首页 > news >正文

PyQt加载UI文件


1.动态加载

import sys
from PySide6 import QtCore,QtWidgets
from PySide6.QtWidgets import *
from PySide6.QtUiTools import QUiLoaderclass readfile(QWidget):def __init__(self):super().__init__()self.ui=QUiLoader().load("test.ui",self)       self.__create_connections()def __create_connections(self):              self.ui.pushButton.clicked.connect(self.open_file)        def open_file(self):        fname,_ = QFileDialog.getOpenFileName(self,"打开文件", '.')if fname:            self.ui.lineEdit.setText(fname)            with open(fname,'r') as f:content = f.read()self.ui.textBrowser.setText(str(content))     
if __name__ == '__main__':#QApplication.setAttribute(Qt.AA_EnableHighDpiScaling)#QApplication.setAttribute(Qt.AA_ShareOpenGLContexts)app = QApplication(sys.argv)w = readfile()w.show()       sys.exit(app.exec())

2.使用QFile加载

import sys
from PySide6 import QtCore,QtWidgets
from PySide6.QtWidgets import *
from PySide6.QtCore import QFile
from PySide6.QtUiTools import QUiLoaderclass readfile(QWidget):def __init__(self):super().__init__()qfile=QFile("test.ui")qfile.open(QFile.ReadOnly)qfile.close()self.ui=QUiLoader().load(qfile,self)      self.__create_connections()def __create_connections(self):              self.ui.pushButton.clicked.connect(self.open_file)        def open_file(self):        fname,_ = QFileDialog.getOpenFileName(self,"打开文件", '.')if fname:            self.ui.lineEdit.setText(fname)            with open(fname,'r') as f:content = f.read()self.ui.textBrowser.setText(str(content))     
if __name__ == '__main__':#QApplication.setAttribute(Qt.AA_EnableHighDpiScaling)#QApplication.setAttribute(Qt.AA_ShareOpenGLContexts)app = QApplication(sys.argv)w = readfile()w.show()       sys.exit(app.exec())

动态加载出有错误信息,但不影响运行
错误信息如下:

qt.pysideplugin: Environment variable PYSIDE_DESIGNER_PLUGINS is not set, bailing out.
qt.pysideplugin: No instance of QPyDesignerCustomWidgetCollection was found.
Qt WebEngine seems to be initialized from a plugin. Please set Qt::AA_ShareOpenGLContexts using QCoreApplication::setAttribute and QSGRendererInterface::OpenGLRhi using QQuickWindow::setGraphicsApi before constructing QGuiApplication.

 

http://www.lryc.cn/news/539950.html

相关文章:

  • Java面试第二山!《计算机网络》!
  • Mysql基础语句
  • 连接池Java导包
  • 一些耳朵起茧子的名词解释
  • HBuilderX中,VUE生成随机数字,vue调用随机数函数
  • C#发送邮件
  • 2025-2-19学习笔记 : this关键字,constructor结构体,class类
  • 避坑:过早的文件结束符(EOF):解决“git clone龙蜥OS源码失败”的失败过程
  • 【Quest开发】全身跟踪
  • 通过BingAPI爬取Bing半个月内壁纸
  • Linux升级Anacodna并配置jupyterLab
  • ctfshow web入门 web11-web24
  • Windows 环境下配置多个不同版本的 Maven
  • web入侵实战分析-常见web攻击类应急处置实验1
  • 适配器模式 Adapter Pattern
  • Android 动态加入Activity 时 manifest 注册报错解决。使用manifestPlaceholders 占位
  • 芝加哥学派(Chicago School):金融与经济学的创新力量(中英双语)
  • 3分钟了解内外网文件传输:常见方法、注意事项有哪些?
  • Python学习心得常用的内置函数
  • VMware Workstation16安装Centos7以及静态IP设置
  • 【核心算法篇十九】《 DeepSeek因果推断:双重差分模型如何破解政策评估的「时空难题」》
  • Token Embedding(词嵌入)和Positional Encoding(位置编码)的矩阵形状关系及转换过程
  • 多个用户如何共用一根网线传输数据
  • U-Net 与深度学习的完美结合:图像分割的高效解决方案
  • nginx ngx_http_module(9) 指令详解
  • 【从0做项目】Java搜索引擎(4)——性能优化~烧脑~~~
  • 【HarmonyOS Next】鸿蒙应用进程和线程详解
  • 【前端ES】ECMAScript 2023 (ES14) 引入了多个新特性,简单介绍几个不为人知但却好用的方法
  • 【EndNote】WPS 导入EndNote 21
  • 网上购物|基于SprinBoot+vue的网上购物系统(源码+数据库+文档)