Python的PyQt框架的使用-创建主窗体篇

news2024/11/27 2:14:15

Python的PyQt框架的使用-构建环境篇

  • 一、前言
  • 二 、创建主窗体


一、前言

  • 个人主页: ζ小菜鸡
  • 大家好我是ζ小菜鸡,小伙伴们,让我们一起来学习Python的PyQt框架的使用。
  • 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)

二 、创建主窗体

  (1)将Python、Qt、与PyCharm三个开发工具进行环境配置,请参考文章:Python的PyQt框架的使用-构建环境篇,配置完成后,创建窗体时只需启动PyCharm开发工具,然后在顶部的菜单栏中依次单击 Tools-External Tools-Qt Designer 菜单项,如图所示:

在这里插入图片描述
说明: Qt Designer 是 Qt工具中的设计师,通过可视化的方式进行程序窗体的设计。通过该工具设计后的窗体文件后缀名为 .ui ,所以需要通过在Python的PyQt框架的使用-构建环境篇添加的PyUIC工具,将后缀名为 .ui 的文件转换为为 .py 的文件。


  (2)点击Qt Designer快捷工具后,Qt的窗口编辑工具将自动打开,并且会自动弹出一个新建窗体的窗口,在该窗口中选择一个主窗体的模板,这里选择Main Window 菜单选项,然后单击 “创建” 按钮即可,如图所示:

在这里插入图片描述


  (3)主窗体创建完成后,自动进入到“Qt Designer” 设计界面,顶部区域是菜单栏与菜单快捷选项,左侧区域是各种控件与布局,中间的区域为编辑区域,该区域可以将控件拖至此处,也可以预览窗体的设计效果。右侧上方是对象查看器,此处列出所有控件以及彼此所属的关系层。右侧上方是对象查看器,此处列出所有控制以及彼此所属的关系层。右侧中间的位置是属性编辑器,此处可以设置控件的各种属性。右侧底部的位置分别为信号/槽编辑器、动作编辑器以及资源浏览器,具体位置与功能如图所示:
在这里插入图片描述


  (4)向下拖动左侧的控件与布局列表,然后向编辑区域的主框体中拖入1个Lable控件,修改需要显示的文字,如图所示:

在这里插入图片描述


  (5)快捷键<Ctrl+S>保存已经创建的主窗体文件,并将该文件名称修改为window.ui,然后使用PyCharm开发工具创建1个Demo项目,再将window.ui文件复制该项目中,鼠标左键选中window.ui文件然后单击右键菜单栏中依次选择External Tools - PyUIC选择,将在Demo项目的目录中自动添加window.py文件,如图所示:

在这里插入图片描述


  (6)打开window.py文件,导入sys模块,然后在代码模块的最外层创建show_MainWindow()方法,该方法用于显示窗体。关键代码如下:

import sys  # 导入系统模块


def show_MainWindow():
    app = QtWidgets.QApplication(sys.argv)  # 实例化QApplication类,作为GUI主程序入口
    Mainwindow = QtWidgets.QMainWindow()  # 创建MainWindow
    ui = Ui_MainWindow()  # 实例UI类
    ui.setupUi(Mainwindow)  # 设置窗体UI
    Mainwindow.show()  # 显示窗体
    sys.exit(app.exec_())  # 当窗口创建完成,需要结束主循环过程


  (7)在代码块的最外层模拟Python的程序入口,然后调用显示窗体的show_MainWindow()方法,关键代码如下:

if __name__ == "__main__":
    show_MainWindow()

  在该文件中右菜单中单击Run“Window”将显示主窗体界面,如图所示:

在这里插入图片描述

说明: Lable 控件可以作为一个占位符,显示不可编辑的文本或图片,其次如果将 .ui 文件转换为 .py 文件时, Lable 控件所对应的类为QLabel,其他控件也是如此。


  Python的PyQt框架的使用-创建主窗体篇,到此就结束了,感谢大家阅读,如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/48013.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】高频指令及简单的vim使用(0基础带你快速入门)

目录 一、目录操作指令 1.1、ls 1.2、pwd 1.3、cd 1.4、touch 1.5、cat 1.6、echo 1.7、mkdir 1.8、rm 1.9、mv 1.10、cp 二、Linux中如何手动安装插件 三、vim 3.1、打开文件 3.2、编辑文件 3.3、保存退出 一、目录操作指令 1.1、ls 语法&#xff1a; 第一种&#…

高维多元时序数据之间的相似性度量

1. 简介 时间序列作为一种按时间顺序排列的特殊数据&#xff0c;是数据挖掘的重要研究内容&#xff0c;其中包括数据准备、数据选择、数据预处理、数据缩减、数据挖掘目标确定、挖掘算法确定、数据挖掘、模式解释及知识评价&#xff19;个处理步骤&#xff37;。数据挖掘方面的…

@SentinelResource注解的使用

SentinelResource注解的使用 1、按资源名称限流后续处理 前置条件&#xff1a; 启动Nacos启动Sentinel 1.1、修改cloudalibaba-sentinel-service8401 引入自己的API通用包 <!--自己的公共包,可以使用Payment支持Entuty--> <dependency><groupId>com.zcl.s…

word目录怎么自动生成?用这个方法,快速自动生成

当我们在写论文或者是编写文档的时候&#xff0c;都需要生成导航目录。很多人写完文档之后想要将其自动生成目录&#xff0c;但是不知道该怎么操作&#xff1f;word目录怎么自动生成&#xff1f;下面我就为大家分享三个步骤&#xff0c;快速自动设置文档的目录。 操作环境&…

SpringBoot配置文件

文章目录配置文件的作用配置文件的格式.properties 配置文件说明.properties 基本语法.properies 读取配置信息.yml 配置说明.yml 基本语法.yml 进阶使用.yml 读取配置信息.properties VS .yml配置文件的作用 整个项目中所有重要的数据都是在配置⽂件中配置的&#xff0c;比如…

社区系统项目复盘-6

文章目录什么是Elasticsearch&#xff1f;Spring是怎么整合Elasticsearch的&#xff1f;开发社区搜索功能Elasticsearch实现全文搜索功能什么是Elasticsearch&#xff1f; Elasticsearch简介 一个分布式的、Restful风格的搜索引擎支持对各种类型的数据的检索搜索速度快&#xf…

FSR-Unity-URP 1.0 的性能和兼容性问题

1&#xff09;FSR-Unity-URP 1.0 的性能和兼容性问题 ​2&#xff09;计算大文件MD5耗时问题 3&#xff09;如何监听Unity即将Reload Script 4&#xff09;如何对Unity游戏的Android崩溃和ANR问题进行符号化解析 这是第315篇UWA技术知识分享的推送。今天我们继续为大家精选了若…

2022年GPS广播星历精密星历如何下载

注意&#xff1a;&#xff01;&#xff01;网上现有很多教程的星历下载地址 ftp://cddis.gsfc.nasa.gov/已经访问不了了&#xff0c;最新的方法见下文&#xff0c;亲测有效~ 1、星历下载网址&#xff08;需要注册一下&#xff09;Earthdata Loginhttps://cddis.nasa.gov/archiv…

我的居家生活--爱摸鱼的美工(二)

-----------作者&#xff1a;天涯小Y 这失败的拉花叫”海上升明月” 呜一 做自己&#xff0c;不太好也没关系 我给自己居家的时间不多了 11月30日我决定”解封” 从身心开始&#xff0c;愿脚步跟上 突如其来的“银丝” 让我沮丧 黑芝麻的疗法因快递又安排不上 算了.幼笑吧 白发…

C#线程的参数传递、获取线程返回值以及处理多线程冲突

C#作为一门优秀的开发语言&#xff0c;现在国内的流行度貌似不如以前&#xff0c;大家都不在意它的无所不能了。 C#的灵活与强大只有在经常使用中才会有所领悟&#xff0c;适当地掌握它还是有必要的。 在这里总结一下线程的传递参数以及获取线程的返回值&#xff0c;还有处理多…

【毕业设计】17-基于单片机的矿井提升机_步进电机控制装置设计(原理图+仿真+源代码+实物图+答辩论文+答辩PPT)

typora-root-url: ./ 【毕业设计】17-基于单片机的矿井提升机_步进电机控制装置设计&#xff08;原理图仿真源代码实物图答辩论文答辩PPT&#xff09; 文章目录typora-root-url: ./【毕业设计】17-基于单片机的矿井提升机_步进电机控制装置设计&#xff08;原理图仿真源代码实…

IB中文(语言与文学)介绍分析

Intro to Group 1 Subjects&#xff1a;语言A 语言A科目主要针对学生的母语语言运用与文学鉴赏能力进行考核&#xff0c;旨在培养学生文学素养的同时注重社会关怀、全球视角与批判性思维的意识形成。 IB文凭要求每位学生至少在语言A中学习一门课程。 今天我们就来仔细介绍一下其…

全波形反演的深度学习方法: 第三章 常规反演

本章介绍反演的基础知识, 以及工程中的常规反演. 仅供内部培训. 3.1 地震数据采集 地震勘探中常使用人工激发的振动进行数据采集. 相应装置包括: 激发器是产生震动的装置, 如炸药, 地震车 (撞击地面). 在城市道路等具有车辆会产生振动的地方, 也可以不安装这类装置;地震检波…

为什么我推荐用户故事地图?

最近在给几个客户的培训和辅导中&#xff0c;都用到了用户故事地图(User Story Mapping or USM)&#xff0c;越来越发现USM是一个强大的工具。USM有它特殊的妙用之处和适用范围&#xff0c;我们不用指望USM能解决多的问题&#xff0c;比如产品架构和用户体验旅程就不在USM的范围…

TSN新技术,让您的设备网络“更实时、更确定、更安全”

近日,工业和信息化部发布了2022年第23号公告,批准发布行业标准YD/T 4134-2022《工业互联网时间敏感网络需求及场景》。该标准是国内首个时间敏感网络(TSN)技术标准,标志着我国TSN技术标准体系建设迈出了坚实的一步,对构建工业互联网网络标准体系具有重要意义。 TSN源于Time…

【解决方法】错误:无法和SFTP服务器建立FTP连接,请选择合适的协议

在家连实验室的服务器时&#xff0c;出现了如下的情况&#xff1a;当时一直在想为啥协议不合适。 解决方案&#xff1a; 1. 点击【文件】->【站点管理器】&#xff0c;出现如下界面&#xff1a; 可能你的那里没有新站点&#xff0c;如果没有就点击新站点哦。 2. 点击【协议…

社区系统项目复盘-4

文章目录Redis高性能存储什么是Redis&#xff1f;为什么使用Redis&#xff1f;Spring是怎么整合Redis的&#xff1f;Redis事务管理点赞关注优化登录模块Redis高性能存储 使用redis实现了点赞、关注相关的功能&#xff0c;优化了登录模块。 什么是Redis&#xff1f; Redis是一…

[附源码]计算机毕业设计springboot基于vue的软件谷公共信息平台

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

力扣(LeetCode)895. 最大频率栈(C++)

设计 ①维护最大频率&#xff0c;②维护每个数的出现次数&#xff0c;③维护出现次数对应的栈。 压栈时&#xff0c;新数压入出现次数对应的栈&#xff0c;每次压入新数&#xff0c;维护最大频率(所有出现次数中的最大出现次数)。 弹栈时&#xff0c;找最大频率对应的栈&…

RealEvo许可证协议

一直使用RealEvo V4.0.0版&#xff0c;今天因license到期&#xff0c;索性一同安装下新版的IDE。 当前最新RealEvo IDE版本为 V5.0.5&#xff0c;V5.0.0~V5.0.3版本存在一些bug&#xff0c;建议更新。 SylixOS 许可信息如下&#xff08;开源版本&#xff09; SylixOS嵌入式实…