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

摄影网站建设开题报告余姚网页设计公司

摄影网站建设开题报告,余姚网页设计公司,网站买卖,手机免费生成logo软件Python 开发可视化界面可以使用原生的 tkinter#xff0c;但是原生框架使用起来颇为不方便#xff0c;所以最流行的还是QT UI框架#xff0c;QT是使用C语言开发#xff0c;Python 想使用需要对其进行封装#xff0c;所以就出现了PyQt框架#xff0c;这个框架使用极其方便…Python 开发可视化界面可以使用原生的 tkinter但是原生框架使用起来颇为不方便所以最流行的还是QT UI框架QT是使用C语言开发Python 想使用需要对其进行封装所以就出现了PyQt框架这个框架使用极其方便而且可以多端运行。 1.安装 PyQt 框架 本人使用的是Mac 2023款 Apple M1芯片Python版本是3.9开发IDE使用的 PyCharm。 Qt 官网文档 https://www.qt.io/download https://riverbankcomputing.com/software/pyqt/download Qt的长期支持版LTS有 Qt 5.15 、Qt 6.2 、Qt 6.5所以我首先选的是 PyQt5 版本下载 pip install PyQt5问题开始出现了安装 PyQt5报错了 Encountered error while generating package metadata sipbuild.pyproject.PyProjectOptionException[end of output]note: This error originates from a subprocess, and is likely not a problem with pip. error: metadata-generation-failed× Encountered error while generating package metadata. ╰─ See above for output. 首先不是pip的问题pip我已经更新到最新了查找好多资料基本可以确定是Python3.9版本过高导致的需要使用Python3.7版本但是我没有去给Python降级因为电脑中还有需要使用Python的地方用到该版本的这里降级在引出别的问题所以放弃 PyQt5下面安装PyQt6。 pip install PyQt6很幸运币顺利就安装好了 试用下看看效果 from PyQt6.QtWidgets import * # 导入PyQt6if __name__ __main__:app QApplication(sys.argv)w QWidget()w.setWindowTitle(我是一个Window)w.show()app.exec()一切顺利运行起来了 2. 安装 QtDesigner PyQt6使用纯代码进行布局作为开发者肯定无法接受尤其是作为iOS开发的我用惯使用了 StoryBoard和Xib等拖拽控件的方式进行布局PyQt也有这种方式就是 QtDesigner。 QtDesigner 下载地址https://build-system.fman.io/qt-designer-download。 选择 Mac 版下载然后安装 在PyCharm中安装External ToolPyCharm - settings - Tools - External Tool 1.Name 随意填写 例如 QtDesigner 2.Program这个就是我们上面下载的 Qt Designer App 路径 /Applications/Qt Designer.app 3.Working directory项目工作目录固定填写 $ProjectFileDir$ 其他项可不填写点击 OK 保存。然后我们在PyCharm的导航栏Tools中查看是否已经添加好了 QtDesigner已经存在了说明已经添加好了然后点击这个插件会出现下面6个视图最用基本上见名知意很好理解 点击中间视图的 Create 按钮创建一个Window或者Widget 中间就是一个Widget我拖拽了两个QLabel两个QLineEdit以及一个QPushButton当然你可以随意拖拽任意组件点击保存 保存到桌面会生成一个.ui文件即 my_widget.ui 我们将这个文件拖到我们项目中 如果想加载这个文件需要用到 pyuic5-tool 下面来安装这个库。 3.安装 pyuic5-tool pip install pyuic5-tool安装结果 (venv) sunshiyusunshiyudeMacBook-Pro-2 gui-demo % pip3 install pyuic5-tool Collecting pyuic5-toolDownloading pyuic5_tool-0.0.1-py3-none-any.whl (9.8 kB) Installing collected packages: pyuic5-tool Successfully installed pyuic5-tool-0.0.1很幸运Python3.9直接安装成功。好的我们继续来加载上面的 my_test.ui 文件 import sysfrom PyQt6.QtCore import * from PyQt6.QtWidgets import * from PyQt6.QtGui import * from PyQt6 import uicif __name__ __main__:passapp QApplication(sys.argv)mw uic.loadUi(./my_test.ui) # 加载.ui文件传入其所在路径即可mw.show()app.exec()我们想如果能将 my_test.ui 文件转成 .py文件 那不是更爽吗是的我们可以实现它接下来我们安装第二个插件 和QtDesigner很相似填写数据 1.Name随便写例如 pyUIC 2.Program这个是我们安装 pyuic5-tool 的路径我的是在venv中/Users/sunshiyu/Desktop/其他/Python/gui-demo/venv/bin/pyuic6 3.Arguments基本也是固定写法$FileName$ -o $FileNameWithoutExtension$.py 4.Working directory工作路径 $FileDir$ pyuic6的路径在 点击 OK我们用相同的方式查看该插件是否已经添加完成 显然已经添加成功下面右键点击my_test.ui文件 - External Tools - pyUIC点击插件 pyUIC就会在同目录下生成一份my_test,py文件如下图 生成的代码如下 # Form implementation generated from reading ui file my_test.ui # # Created by: PyQt6 UI code generator 6.5.2 # # WARNING: Any manual changes made to this file will be lost when pyuic6 is # run again. Do not edit this file unless you know what you are doing.from PyQt6 import QtCore, QtGui, QtWidgetsclass Ui_Form(object):def setupUi(self, Form):Form.setObjectName(Form)Form.resize(491, 378)self.pushButton QtWidgets.QPushButton(parentForm)self.pushButton.setGeometry(QtCore.QRect(190, 270, 113, 32))self.pushButton.setObjectName(pushButton)self.label QtWidgets.QLabel(parentForm)self.label.setGeometry(QtCore.QRect(40, 30, 60, 16))self.label.setObjectName(label)self.label_2 QtWidgets.QLabel(parentForm)self.label_2.setGeometry(QtCore.QRect(40, 60, 60, 16))self.label_2.setObjectName(label_2)self.lineEdit QtWidgets.QLineEdit(parentForm)self.lineEdit.setGeometry(QtCore.QRect(100, 30, 113, 21))self.lineEdit.setObjectName(lineEdit)self.lineEdit_2 QtWidgets.QLineEdit(parentForm)self.lineEdit_2.setGeometry(QtCore.QRect(100, 60, 113, 21))self.lineEdit_2.setObjectName(lineEdit_2)self.retranslateUi(Form)QtCore.QMetaObject.connectSlotsByName(Form)def retranslateUi(self, Form):_translate QtCore.QCoreApplication.translateForm.setWindowTitle(_translate(Form, Form))self.pushButton.setText(_translate(Form, 点击))self.label.setText(_translate(Form, 账号))self.label_2.setText(_translate(Form, 密码))
http://www.zqtcl.cn/news/543287/

相关文章:

  • 微信分享 淘宝网站 怎么做wordpress访问慢
  • 网站后台制作沈阳营销型网站制作技术
  • 微页制作平台网站建设wordpress文章显示数量
  • 望野古诗王绩seo优化系统
  • 网站设计大概流程惠城区龙丰街道
  • 游戏平台十大排名南宁seo优化公司
  • 佛山外贸网站建设方案企业管理控制系统
  • 分类信息网站如何做排名品牌建设卓有成效
  • 企业网站报价方案模板下载营销软件crm
  • 湛江网站开发哪家专业东莞营销型手机网站建设
  • 做个外贸的网站不懂英语咋做做网站 嵌入支付
  • 官方模板关键字生成的代码添加在网站的什么地方?网站 建设 培训 视频
  • 做网站时图片要切片有什么作用网站导航栏模板怎么做
  • 网站做数据分析网站开发为什么不用cgi了
  • 有了网址可以建网站吗软件外包项目网站
  • 威海设计网站的单肩包自定义页面设计模板
  • 制作一个网站首页中国建设个人网上银行官网
  • 厦门开发网站公司购买手表网站
  • 网站模板排名vs做网站加背景
  • 思途旅游网站建设系统郴州新网招聘
  • 婚庆公司网站模板下载海域装饰
  • 微信小程序是干什么用的永康网站优化
  • 网站seo是什么谷歌海外广告投放
  • 江苏省 建设 注册中心网站首页淮南建筑网
  • 网站备案核wordpress页面菜单
  • 凤阳县城乡建设局网站设计本app下载
  • 网站建设实用教程网站后台制作表格
  • 微信官方网站注册新开的网页游戏平台
  • 福州专业建站网站代码的重点内容是什么
  • jsp网站架构网站设计的主要内容