python桌面程序开发_程序员之路:python3+PyQt5+pycharm桌面GUI开发

先看效果:

002NehRPzy7fPmhzryZ5d&690

图 1

没错,学过C#的同学应该很熟悉这个界面,按钮风格和界面风格很相似,万万没想到,python也可以做出这样的界面,简直了!(图 1)

正文开始

一、安装python

为啥要说这个,我们打开pip,搜索:PyQt5,或者直接打开下面的连接:

https://pypi.python.org/pypi/PyQt5/5.9.1

002NehRPzy7fPnnFi3j9d&690

图 2

可以看到(图2),PyQt5所支持的python版本是从3.5开始的,博主开始用的是3.4,一直装不上,瞎折腾了2小时^~^...

找一个python3.5以上的版本安装:

https://www.python.org/downloads/windows/

二、安装PyQt5

推荐使用pip安装:

pip3 install PyQt5

等待片刻,继续安装PyQt5-tools

pip install PyQt5-tools

三、配置pycharm

官网下载安装pycharm:https://www.jetbrains.com/pycharm/

1、点击:File -》Settings

002NehRPzy7fPnSGkRNc7&690

图 3

2、Tools -》 External Tools -》点击“+”号(图4)

(ps:下面是我配置好的,你的软件还没有很正常,继续往下看)

002NehRPzy7fPnSKujM92&690

图 4

3、设置Qt Designer

修改三个地方,其他地方默认:

Name:Qt Designer

Programs:D:\Program

Files\Python35\Lib\site-packages\pyqt5-tools\designer.exe

Working directory:$ProjectFileDir$

(ps:Programs参数需要修改为你电脑里边的“designer.exe”路径)(图5)

002NehRPzy7fPnSNYe490&690

图 5

4、配置PyUIC

设置四个地方,其他可以默认(我也不知道怎么改,那就默认吧)

Name:PyUIC

Programs:D:\Program Files\Python35\python.exe

Parameters:-m PyQt5.uic.pyuic $FileName$ -o

$FileNameWithoutExtension$.py

Working directory:$ProjectFileDir$

(ps:Programs参数需要修改为你电脑里边的python“python.exe”路径)(图6)

002NehRPzy7fPnSSkSMa4&690

图 6

四、使用Qt Designer

1、完成以上步骤之后,点击 Tools -》External Tools -》Qt Designer 启动我们的Qt

Designer (图7)

002NehRPzy7fPnSVX0M14&690

图 7

2、启动后选择:Widget,建立空白的窗口(图8),点击

Create,其他默认就行

002NehRPzy7fPnSZ5btb3&690

图 8

3、从左边 1区 拖拽,注意是“拖拽”控件到 2区,在 3区 中修改对应属性(图9),很像vs有木有

002NehRPzy7fPnT52y9f5&690

图 9

4、昨晚基本的界面设置之后,会看到同目录下生成了一个“.ui”的文件(图10)

002NehRPzy7fPnT7W1Qf2&690

图 10

5、右键 External Tools -》PyUIC ,将“.ui”文件转为“.py”文件(图11)

002NehRPzy7fPnThfzF27&690

图 11

6、这时,如果一切正常,没有报错的话,会在同目录下生成对应的“.py”文件(图12)

002NehRPzy7fPnTpr6N19&690

图 12

7、将下面的代码,放到生成的“.py”文件,放到最后就行(注意缩进)

if __name__=="__main__":

import sys

from PyQt5.QtGui import QIcon

app=QtWidgets.QApplication(sys.argv)

widget=QtWidgets.QWidget()

ui=Ui_Form()

ui.setupUi(widget)

widget.setWindowIcon(QIcon('web.png'))#增加icon图标,如果没有图片可以没有这句

widget.show()

sys.exit(app.exec_())

8、运行启动,好了,恭喜你,开启了pythonGUI

002NehRPzy7fPnTy3rg66&690

本文参考了以下文章:

《【第一节】QtDesigner安装》 http://code.py40.com/2540.html

《【第二】用QtDesigner设计第一个界面》 http://code.py40.com/2561.html

《PyQt5+python3+pycharm开发环境配置 》

http://blog.csdn.net/a359680405/article/details/45074761

《PyQt5 教程》

http://code.py40.com/pyqt5/

添加main.py,因为ui文件命名为hello,所以import是hello

copycode.gif

import sys

import hello

from PyQt5.QtWidgets import QApplication, QMainWindow

if __name__ == '__main__':

app = QApplication(sys.argv)

MainWindow = QMainWindow()

ui = hello.Ui_MainWindow()

ui.setupUi(MainWindow)

MainWindow.show()

sys.exit(app.exec_())

copycode.gif

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

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

相关文章

转: MySQL 赋予用户权限(grant %-远程和localhost-本地区别)

2019独角兽企业重金招聘Python工程师标准>>> ‍‍相关参考资料:MySQL 赋予用户权限命令的简单格式可概括为:grant 权限 on 数据库对象 to 用户一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。 grant s…

kafka控制台模拟消费_Kafka 详解

kafka简介Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需…

python在web可以开发吗_Python Web开发

参考原文 WSGI接口 WSGI(Web Server Gateway Interface)是一个接口,用来屏蔽底部的细节(如TCP的建立连接,HTTP原始请求和响应格式等)。WSGI接口定义非常简单,只需要Web开发者实现一个函数&#…

更新丨.NET 7 预览版2 中的 ASP.NET Core

点击上方蓝字 关注我们(本文阅读时间:6分钟).NET 7 预览版2 现已推出,其中包括对 ASP.NET Core 的许多重大改进。以下是此预览版中新增内容的摘要:• 推断来自服务的 API 控制器操作参数;• SignalR 集线器方法的依赖注…

LoadRunner+Android模所器实现抓包并调试本地服务端

为了测试Android软件的服务端的功能,需要重现某些客户端操作,便于发现功能问题,性能问题。也方便客户端与本机服务端特别是服务端代码进行断点调试。这个时候需要对网络操作进行重现。loadRunner是hp公司开发的压力测试工具。功能比较强大&am…

架构师

系统架构师是一个既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的人。具体来说是一个确认和评估系统需求,给出开发规范,搭建系统实现的核心构架,并澄清技术细节、扫清主要难点的技术人员。主要着眼于系统的“技术实现”…

统信uos系统考试题_148款!富士通及旗下晟拓品牌系列打印机适配统信UOS

近日,南京富士通电子信息科技股份有限公司(简称:富士通)及其旗下晟拓子品牌148款主流打印机产品与统信桌面操作系统UOS的适配工作即将完成,这次适配涵盖了富士通及晟拓的常用主流机型。富士通正式成为统信软件产品生态合作伙伴。本次适配&…

手机浏览器html5游戏,移动浏览器都爱 HTML5 ?

目前中国第三方手机浏览器市场竞争正在愈演愈烈,但由于各应用开发商对手机浏览器的内容和资源的整合能力、技术研发能力、战略布局目的等方面均各不相同,浏览器产品也出现了同质化严重、内容匮乏等问题,亮点突出、吸引用户的产品较缺乏&#…

怎么快速了解自己的MySQL服务器?

From: http://www.cnblogs.com/benshan/archive/2013/01/09/2853097.html 1、查看数据库服务器状态:status Linux 下的MySQL服务器状态 该列表中主要包括MySQL的版本(为version 5.1.61)、运行平台(debian-linux-gnu(i686)&#xf…

八类网线和七类网线的区别_什么是七类网线?七类网线水晶头如何制作?

要了解七类网线如何使用?需要掌握这四个问题:1、什么是七类网线?2、七类网线与六类网线有什么区别?3、七类网线用什么水晶头?如何制作7类网线水晶头?4、7类网线的应用场景?带着这四个问题&#…

poj2632 累死了

题意: 给定A*B的格子,放入N个机器人,每个机器人初始位置及朝向给定。给定M条指令。指令类型有三种: 1、L:左转90 2、R:右转90 3、F:前进一格 问执行指令过程中机器人是否发生碰撞&am…

代码生成器原理

整个架设思路分的4个部分:A:底层物理数据库层,主要是存储数据用的。B:数据库访问层,主要是为了写一套代码可以跑在多种数据库上。C:一些辅助工具、基础组件,是为了加强自动产生代码的功能、简化…

【Blog.Core开源】将Program升级为.NET6.0版本

大家假期好,好久不见,之前忙于其他事情,公众号暂时搁置了一个月了,新的一年开始了,很多小伙伴开始催更了,粉丝的要求必须满足。2022年打算重点推广BCVP社区,所以还是希望有愿意投稿的小伙伴&…

python画两条曲线_查找在matplotlib中绘制的两条曲线之间的区域(在区域之间填充)...

我有两条曲线的x和y值列表,它们都有奇怪的形状,而且我没有任何函数。我需要做两件事:(1)绘制它并对曲线之间的区域进行着色,如下图所示;(2)找到曲线之间该着色区域的总面…

OXY OPENCART 商城自适应主题模板 ABC-0020-05

OXY OPENCART 商城自适应主题模板 ABC-0020-05OXY FEATURESLayoutFoundation Framework – the most advanced responsive front-end framework in the world.100% Fully Responsive – Solid Flexible Responsive Layout that scales from 320px to 1440px.You can disable re…

年月跨度_建筑结构丨国内跨度最大的张弦桁架工程——合肥滨湖国际会展中心二期首榀桁架滑移成功...

来源:中建科工 华中大区。2020年12月8日全国公建领域最大跨度的张弦桁架钢结构工程合肥滨湖国际会展中心二期首榀桁架滑移顺利完成合肥滨湖国际会展中心二期项目位于合肥市滨湖新区锦绣大道与广西路交口,该项目2#综合馆建筑面积约4.8万平方米&#xff0c…

【C#/.NET】不用AutoMapper,我用啥呢?

微信公众号:趣编程ACE关注可了解更多的.NET日常实战开发技巧。如需源码请后台留言源码;**[如果觉得对您有帮助,欢迎关注]TinyMapper简介本文来自社区群粉丝投稿TinyMapper是一个.NET平台下的一个轻量级对象映射工具,号称是.Net平台下最快的对…

HBase键值分片的简单运用

1.基本原理介绍 HBase的存储是通过行键建立索引进行存储的,而且HBase只支持一级索引,因此只要通过行键才能很快的找到需要的数据。HBase是一个分布式的系统,HBase通过行键的分片,把不同的数据存储在不同的主机上。1).顺序分片依据…

我要3万取款机怎么取_7万的新宝骏RS-3怎么样?用车三个月后,车主说出了实话...

小型SUV领域,作为目前SUV市场之中竞争最激烈的细分领域之一,已经成为众多车企的必争之地。而正因如此,小型SUV市场所具有的车型非常的丰富,且其中更是一点也不缺爆款车型,正如在去年底刚上市的一款小型SUV——新宝骏RS…

MODIS数据说明

MODIS目前主要存在于两颗卫星上:TERRA和AQUA。TERRA卫星每日地方时上午10:30时过境,因此也把它称作地球观测第一颗上午星(EOS-AM1)。AQUA每日地方时下午过境,因此称作地球观测第一颗下午星(EOS-PM1)。两颗星相互配合,每1-2天可重复…