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

推荐购物网站建设软文范例大全

推荐购物网站建设,软文范例大全,电子商务网站运营,安徽seo原文地址:Using a Designer UI File in Your Qt for Python Application 直接上图,上代码 将UI文件转为Python 为了演示,我们使用 Qt Widgets 简单示例说明。 这个应用程序由一个源文件 easing.py、一个 UI 文件 form.UI、一个资源文件 ea…

原文地址:Using a Designer UI File in Your Qt for Python Application

直接上图,上代码
在这里插入图片描述

将UI文件转为Python

为了演示,我们使用 Qt Widgets 简单示例说明。
这个应用程序由一个源文件 easing.py、一个 UI 文件 form.UI、一个资源文件 easing.qrc 和项目文件 easing.pyproject 组成,项目文件采用 YAML 格式:

{"files": ["easing.qrc", "ui_form.py", "easing.py", "easing_rc.py","form.ui"]
}

form.ui文件通过uic(User Interface Compiler (uic))命令转换为Python文件ui_form.py :

uic -g python form.ui > ui_form.py

PS: 官网的介绍太啰嗦,也不清楚这个easing.pyproject是手动创建的还是哪个IDE自动创建的,总之没啥用,还一头雾水,实际上有更简单的方法,详见:
【原创】Anaconda+VScode+PySide6 完美配置Python开发环境,亲测!
简单来说是用Qt for Python插件自动生成ui_form.py及easing_rc.py,文中里有详细的图文介绍,这里不再赘述。
本文的项目即是在此环境中生成的,这里是下载地址。
在这里插入图片描述

原文的代码写的不完整,完整的代码如下:
easing.ui文件代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0"><class>Form</class><widget class="QMainWindow" name="Form"><property name="geometry"><rect><x>0</x><y>0</y><width>800</width><height>600</height></rect></property><property name="windowTitle"><string>Form</string></property><property name="windowIcon"><iconset resource="easing.qrc"><normaloff>:/icon/icon/huawei.png</normaloff>:/icon/icon/huawei.png</iconset></property><widget class="QWidget" name="centralwidget"/><widget class="QMenuBar" name="menubar"><property name="geometry"><rect><x>0</x><y>0</y><width>800</width><height>21</height></rect></property></widget><widget class="QStatusBar" name="statusbar"/></widget><resources><include location="easing.qrc"/></resources><connections/>
</ui>

自动生成的ui_form.py如下:

# -*- coding: utf-8 -*-################################################################################
## Form generated from reading UI file 'form.ui'
##
## Created by: Qt User Interface Compiler version 6.6.3
##
## WARNING! All changes made in this file will be lost when recompiling UI file!
################################################################################from PySide6.QtCore import (QCoreApplication, QDate, QDateTime, QLocale,QMetaObject, QObject, QPoint, QRect,QSize, QTime, QUrl, Qt)
from PySide6.QtGui import (QBrush, QColor, QConicalGradient, QCursor,QFont, QFontDatabase, QGradient, QIcon,QImage, QKeySequence, QLinearGradient, QPainter,QPalette, QPixmap, QRadialGradient, QTransform)
from PySide6.QtWidgets import (QApplication, QMainWindow, QMenuBar, QSizePolicy,QStatusBar, QWidget)
import easing_rcclass Ui_Form(object):def setupUi(self, Form):if not Form.objectName():Form.setObjectName(u"Form")Form.resize(800, 600)icon = QIcon()icon.addFile(u":/icon/icon/huawei.png", QSize(), QIcon.Normal, QIcon.Off)Form.setWindowIcon(icon)self.centralwidget = QWidget(Form)self.centralwidget.setObjectName(u"centralwidget")Form.setCentralWidget(self.centralwidget)self.menubar = QMenuBar(Form)self.menubar.setObjectName(u"menubar")self.menubar.setGeometry(QRect(0, 0, 800, 21))Form.setMenuBar(self.menubar)self.statusbar = QStatusBar(Form)self.statusbar.setObjectName(u"statusbar")Form.setStatusBar(self.statusbar)self.retranslateUi(Form)QMetaObject.connectSlotsByName(Form)# setupUidef retranslateUi(self, Form):Form.setWindowTitle(QCoreApplication.translate("Form", u"Form", None))# retranslateUi

easing.py代码如下:

import sys
from PySide6.QtWidgets import QApplication, QMainWindow
from ui_form import Ui_Form  # 根据实际生成的文件名导入class MainWindow(QMainWindow):def __init__(self):super().__init__()self.ui = Ui_Form()  # 创建 UI 对象self.ui.setupUi(self)  # 设置 UIif __name__ == "__main__":app = QApplication(sys.argv)window = MainWindow()window.show()  # 显示窗口sys.exit(app.exec())  # 运行应用

在这里插入图片描述
form.ui文件自动生成的文件名为ui_form.py,如上图,主窗口objectName设置为Form其生成的Python文件Class名即为Ui_Form
即可通过Ui_Form调用此widget窗口。
除了 setupUi ()之外,Ui_Form还提供了另一个方法 retransateUi () ,可以通过调用QEvent.LanguageChange 方法,用来改变UI界面显示语言。

self.ui.graphicsView.setScene(self.scene)

UiTools 方法

官网上的这部分代码在我的环境(Python3.8.20)中没跑起来,暂时没找到原因。
以下代码是Using .ui files from Designer or QtCreator with QUiLoader and pyside6-uic中的,之所以没有用原文链接中的代码,是因为其代码根本就不全,别说跑起来了。

import sys
from PySide6.QtUiTools import QUiLoader
from PySide6.QtWidgets import QApplication
from PySide6.QtCore import QFile, QIODeviceif __name__ == "__main__":app = QApplication(sys.argv)ui_file_name = "form.ui"ui_file = QFile(ui_file_name)if not ui_file.open(QIODevice.ReadOnly):print(f"Cannot open {ui_file_name}: {ui_file.errorString()}")sys.exit(-1)loader = QUiLoader()window = loader.load(ui_file)ui_file.close()if not window:print(loader.errorString())sys.exit(-1)window.show()sys.exit(app.exec())

导入资源文件

单一目录使用场景

在这里插入图片描述
当使用Qt Designer设计UI时,若引用了资源文件(如easing.qrc),form.ui文件中会包含以下代码

 <resources><include location="easing.qrc"/></resources>

自动生成的ui_form.py中也会自动添加

import easing_rc

目录树场景

有些项目有更复杂的目录结构,如qrc文件和ui文件在多级目录下,如下目录结构:

projectresources   (resources.qrc)ui          (.ui files)

这种情况下当使用Qt Designer设计UI时,若引用了资源文件(如resources.qrc),*.ui文件中会包含以下代码

 <resources><include location="../resources/resources.qrc"/></resources>

自动生成的ui_*.py中也会自动添加

import resources.resources_rc

对于更深层次的嵌套,可以使用Python的os.path 等方法,如果未设置路径,系统会自动检查PYTHONPATH 环境变量。

基于表述尽可能保持简洁的原因,本文未完全按照原文翻译

http://www.hkea.cn/news/619798/

相关文章:

  • 营销型网站怎么做智能建站abc
  • 捷信做单官方网站网络服务主要包括什么
  • 网站建设的方案费用什么时候网络推广
  • 这么做3d展示网站公司百度官网优化
  • 工业设计软件上市公司搜索引擎优化的方法
  • 网站建设公司创意网站网络推广推广
  • 浙江三建建设集团有限公司网站关键词的作用
  • 网站建设官方网站教育培训机构加盟十大排名
  • 万网上传网站seo免费
  • 孝感做网站公司百度热议排名软件
  • 建设网站费用吗廊坊seo快速排名
  • 网站建设公司怎样拓展网站业务大连网站推广
  • 什么网站可以免费做找客户东莞seo建站推广费用
  • 合肥微信网站建设购物网站如何推广
  • 网站建设课程简介图片百度官网认证免费
  • 月夜影视在线观看免费完整版韩剧关键词排名优化报价
  • 做网站的工作时间兰州seo公司
  • css怎么嵌入到html直通车关键词优化口诀
  • 虚拟网站php专业型seo网站关键词排名提升
  • 找人合伙做网站平台b2b电商平台
  • 手机网站建设技术方案找网站设计公司
  • 杭州如何设计公司网站惠州seo网站推广
  • 成都网站建设门户大连企业网站建站模板
  • 游戏卡充值可以做网站吗百度竞价关键词出价技巧
  • 建设企业网站就等于开展网络营销网店推广实训报告
  • dede无法更新网站主页到百度联盟注册
  • wordpress支持爱奇艺企业网站seo托管怎么做
  • 永川做网站的武汉百度快速排名提升
  • 做网站的故意给中病毒网络营销广告
  • 关于阅读类网站的建设规划书友情链接系统