百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Python入坑系列-一起认识Pyside6 designer可拖拽桌面GUI

ccwgpt 2024-10-24 09:05 197 浏览 0 评论

通过本文章,你可以了解一下内容:

  1. 如何安装和使用Pyside6 designer
  2. designer有哪些的特性
  3. 通过designer如何转成python代码

以前以为Pyside6 designer需要在下载qt desinger才能使用拖拽的设计器,看完本文后你会发现原来这么简单。

1、环境信息

操作系统

Win11

python

3.10.6

pip

22.3.1

2、安装Pyside6 designer

可以使用下面的任意方式来安装Pyside6 designer

使用pycharm pip安装Pyside6

pip install pyside6
#使用阿里云pypi源
pip install pyside6 -i https://mirrors.aliyun.com/pypi/simple/

安装好后pyside designer在当前工程下面,目录env\Lib\site-packages\PySide6,如图:

使用本地环境安装

将pip命令设置成环境变量,在cmd运行命令

pip install pyside6 -i https://mirrors.aliyun.com/pypi/simple/

执行完后被安装到本地环境的Python\Python310\Lib\site-packages\PySide6目录下,如图:

3、使用Pyside6 designer

通过pycharm运行

(1)配置external tools

在pycharm导航菜单File->settings->Toos->External Tools下面,这里设置外部工具名称为:Pyside6 designer

说明:第五步设置designer文件保存目录,值为:$ProjectFileDir$,不过自己使用过程中没有用,设计器新建的后保存文件时还是需要指定保存目录。

(2)运行

在pycharm导航菜单Tools->Extrnal Tools

直接运行

在Lib\site-packages\PySide6目录下直接双击designer.exe文件,这样最简单,或者将designer.exe发送到桌面即可,以后都可以重桌面上面运行

运行后,界面效果如下:

支持创建窗口部件、模版和表单部件,感兴趣的可以安装尝试一下。注意选择某些部件,左侧很多控件集合不能正常拖拽

4、Pyside6 designer特性及界面介绍

PySide6 是 Qt for Python 的最新版本,提供了对 Qt 6 的绑定。它允许 Python 开发者使用 Qt,一个跨平台的 GUI 应用程序框架,来创建丰富的桌面应用程序。PySide6 包括了 Qt Designer,这是一个强大的工具,用于设计和构建 GUI 界面。

PySide6 Designer 的一些关键特性

  • 直观的拖放界面: 提供了一个直观的拖放界面,使得开发者可以不编写任何代码就设计 GUI。可以从工具箱中选择各种控件(如按钮、文本框、滑块等),并将它们拖放到窗口中。
  • 丰富的控件集合:提供了丰富的控件集合,包括基本控件、容器、对话框、菜单、工具栏和其他专用控件。这些控件支持广泛的 GUI 应用程序开发需求。
  • 属性编辑器:属性编辑器允许你修改控件的属性,如大小、颜色、字体和布局等。这使得定制和优化用户界面变得非常简单。
  • 信号与槽机制:Qt 的信号与槽机制是处理事件和通信的核心。在 Qt Designer 中,可以图形化地连接控件的信号和槽,实现控件之间的交互,而无需编写复杂的代码。
  • 布局管理:Qt Designer 提供了强大的布局管理工具,帮助开发者设计响应式和灵活的 GUI。可以使用网格布局、垂直或水平布局等,确保应用程序在不同大小和分辨率的屏幕上都能正确显示。
  • 预览功能:可以在 Qt Designer 中直接预览设计的界面,查看它在运行时的外观和行为。这有助于快速迭代和改进设计。
  • 集成开发环境支持:PySide6 和 Qt Designer 可以与主流的 Python IDE(如 PyCharm)和其他开发工具集成,提供更流畅的开发体验。
  • UI 文件和代码转换:Qt Designer 使用 .ui 文件格式保存界面设计。PySide6 提供了工具(如 uic),可以将这些 .ui 文件转换为 Python 代码,这样开发者就可以在 Python 应用程序中直接使用它们。
  • 跨平台:由于 Qt 和 PySide6 的跨平台性,使用 Qt Designer 设计的界面可以在 Windows、macOS 和 Linux 上无缝运行,无需修改代码

PySide6 Designer功能介绍

  • 工具箱(Widget Box):工具箱包含了所有可用的标准 GUI 控件,如按钮(Buttons)、标签(Labels)、输入框(Line Edits)等。开发者可以从工具箱中拖动所需的控件到窗口设计器中。
  • 窗口设计器(Form Designer):这是主工作区域,开发者在这里布局和设计应用程序的界面。你可以在这里放置、移动和调整控件的大小。
  • 属性编辑器(Property Editor):属性编辑器允许开发者查看和编辑选中控件的属性,如大小、颜色、字体等。这些属性的修改会即时反映在窗口设计器中。
  • 对象浏览器(Object Inspector):对象浏览器显示当前窗口中所有控件的层次结构。它允许开发者选择、查看和编辑控件的属性,并管理控件之间的父子关系。
  • 信号/槽编辑器(Signal/Slot Editor):Qt 的信号和槽机制是其事件处理系统的核心。信号/槽编辑器允许开发者图形化地连接控件的信号和槽(即事件和处理函数),实现控件之间的交互。
  • 动作编辑器(Action Editor):动作编辑器用于创建和管理窗口或应用程序级别的动作。这些动作可以被分配给菜单项、工具栏按钮或其他触发器。
  • 7. 资源浏览器(Resource Browser):资源浏览器允许开发者管理和使用项目的资源,如图像、图标和其他文件。这些资源可以被直接引用和使用在界面设计中。
  • 预览功能:PySide6 Designer 提供了预览功能,允许开发者在不运行实际 Python 代码的情况下,查看设计的界面在不同操作系统和风格下的外观。
  • 集成代码编辑器:虽然 PySide6 Designer 主要关注于界面设计,但它也提供了基本的代码编辑功能,允许开发者查看和编辑生成的 UI 文件的 XML 源码

UI文件转成python

窗体设计完成后,文件格式为.ui文件,需要将这种文件转成.py文件才能运行,如图:

运行转换

可以在菜单栏选择窗体->View Python Code,那么当前的设计的.ui文件被打开成.python文件,如图:

  • 拷贝或者保存python文件

运行打开的文件可以直接拷贝文件内容或者点击保存按钮保存到python项目目录

解决转化报错问题

正常情况,运行会报如下错误:

D:\py_project\pyside6demo\env\Lib\site-packages\PySide6\bin\uic:进程启动失败:系统找不到指定文件。

原因是在安装pyside6的时候,D:\py_project\pyside6demo\env\Lib\site-packages\PySide6目录下面不会生成bin目录,找不到uic执行文件。

解决办法是:

  • 在env\Lib\site-packages\PySide6目录下新建bin目录
  • 将env\Lib\site-packages\PySide6下面的uic.exe拷贝到bin目录

效果图如下:

重新执行上面的View Python Code即可。

相关推荐

机器学习框架TensorFlow入门(tensorflow框架详解)

ensorFlow是一个广泛使用的开源机器学习框架,由GoogleBrain团队开发。它支持广泛的机器学习和深度学习任务,并且可以在CPU和GPU上运行。下面是一个使用TensorF...

合肥高新区企业本源发布量子机器学习框架VQNet 开辟量子机器学习的新领域

近日,高新区企业合肥本源量子计算科技有限责任公司通过研究混合实现变分量子算法和经典机器学习框架的可能性,全新开发了量子机器学习框架VQNet,可满足构建所有类型的量子机器学习算法,实现量子-经典混合任...

如何使用 TensorFlow 构建机器学习模型

在这篇文章中,我将逐步讲解如何使用TensorFlow创建一个简单的机器学习模型。TensorFlow是一个由谷歌开发的库,并在2015年开源,它能使构建和训练机器学习模型变得简单。我们接下...

机器学习框架底层揭秘:PyTorch、TensorFlow 如何高效“跑模型”

在使用PyTorch或TensorFlow时,你是否想过:这些深度学习框架底层到底是怎么运行的?为什么我们一行.backward()就能自动计算梯度?本篇将用最简单的语言,拆解几个关键概念...

2 个月的面试亲身经历告诉大家,如何进入 BAT 等大厂?

这篇文章主要是从项目来讲的,所以,从以下几个方面展开。怎么介绍项目?怎么介绍项目难点与亮点?你负责的模块?怎么让面试官满意?怎么介绍项目?我在刚刚开始面试的时候,也遇到了这个问题,也是我第一个思考的问...

基于SpringBoot 的CMS系统,拿去开发企业官网真香(附源码)

前言推荐这个项目是因为使用手册部署手册非常完善,项目也有开发教程视频对小白非常贴心,接私活可以直接拿去二开非常舒服开源说明系统100%开源模块化开发模式,铭飞所开发的模块都发布到了maven中央库。可...

【网络安全】关于Apache Shiro权限绕过高危漏洞的 预警通报

近日,国家信息安全漏洞共享平台(CNVD)公布了深信服终端检测平台(EDR)远程命令执行高危漏洞,攻击者利用该漏洞可远程执行系统命令,获得目标服务器的权限。一、漏洞情况ApacheShiro是一个强...

开发企业官网就用这个基于SpringBoot的CMS系统,真香

前言推荐这个项目是因为使用手册部署手册非常完善,项目也有开发教程视频对小白非常贴心,接私活可以直接拿去二开非常舒服。开源说明系统100%开源模块化开发模式,铭飞所开发的模块都发布到了maven中央库。...

这款基于SpringBoot 的CMS系统,开发企业官网确实香(附源码)

前言推荐这个项目是因为使用手册部署手册非常完善,项目也有开发教程视频对小白非常贴心,接私活可以直接拿去二开非常舒服开源说明系统100%开源模块化开发模式,铭飞所开发的模块都发布到了maven中央库。可...

【推荐】一款基于BPM和代码生成器的 AI 低代码开源平台

如果您对源码&技术感兴趣,请点赞+收藏+转发+关注,大家的支持是我分享最大的动力!!!项目介绍JeecgBoot是一款基于BPM和代码生成器的AI低代码平台,专为Java企业级Web应用而生。它采...

云安全日报200819:Apache发现重要漏洞 可窃取信息 控制系统 需要尽快升级

ApacheHTTPServer(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软...

基于jeecgboot框架的cloud商城源码分享,兼容单体和微服务模式

3年时间里,随着关注java单商户商城系统的朋友越来越多,对cloud版本的商城呼声也越来越高。因此今年立项了cloud版本的开发,目前已发gitee开源,目前也基本测试完毕,欢迎大家体验以及提出宝贵...

SpringBoot + Mybatis + Shiro + mysql + redis智能平台源码分享

后端技术栈基于SpringBoot+Mybatis+Shiro+mysql+redis构建的智慧云智能教育平台基于数据驱动视图的理念封装element-ui,即使没有vue的使...

我敢保证,全网没有再比这更详细的Java知识点总结了,送你啊

接下来你看到的将是全网最详细的Java知识点总结,全文分为三大部分:Java基础、Java框架、Java+云数据小编将为大家仔细讲解每大部分里面的详细知识点,别眨眼,从小白到大佬、零基础到精通,你绝...

基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构(附源码)

前言zheng项目不仅仅是一个开发架构,而是努力打造一套从前端模板-基础框架-分布式架构-开源项目-持续集成-自动化部署-系统监测-无缝升级的全方位J2EE企业级开发解...

取消回复欢迎 发表评论: