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

http://blog.sina.com.cn/s/blog_989218ad0102wz1k.html

先看效果:
图 1
没错,学过C#的同学应该很熟悉这个界面,按钮风格和界面风格很相似,万万没想到,python也可以做出这样的界面,简直了!(图 1)
 
正文开始
 
一、安装python
 
为啥要说这个,我们打开pip,搜索:PyQt5,或者直接打开下面的连接:
 
https://pypi.python.org/pypi/PyQt5/5.9.1
 
图 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
 
图 3
 

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

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

图 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)
 
图 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)
 
图 6
 

四、使用Qt Designer

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

图 7
 
2、启动后选择:Widget,建立空白的窗口(图8),点击 Create,其他默认就行
 
图 8
 

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

图 9
 

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

图 10
 

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

 
图 11
 

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

图 12

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

 
  1. if __name__=="__main__":
  2. import sys
  3. from PyQt5.QtGui import QIcon
  4. app=QtWidgets.QApplication(sys.argv)
  5. widget=QtWidgets.QWidget()
  6. ui=Ui_Form()
  7. ui.setupUi(widget)
  8. widget.setWindowIcon(QIcon('web.png'))#增加icon图标,如果没有图片可以没有这句
  9. widget.show()
  10. sys.exit(app.exec_())
 

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

 
本文参考了以下文章:
 
《【第一节】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

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_())
 
分类: [0021] QT

程序员之路:python3+PyQt5+pycharm桌面GUI开发(转)的更多相关文章

  1. Python3+PyQt5+PyCharm 桌面GUI开发环境搭建

    Python3+PyQt5+PyCharm 桌面GUI开发环境搭建 一.安装python PyQt5所支持的python版本是不低于3.5版本 python3.5以上的版本安装:https://www ...

  2. 程序员之路:python3+PyQt5+pycharm桌面GUI开发

    http://blog.sina.com.cn/s/blog_989218ad0102wz1k.html 先看效果: 图 1 没错,学过C#的同学应该很熟悉这个界面,按钮风格和界面风格很相似,万万没想 ...

  3. Java 进阶 hello world! - 中级程序员之路

    Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). ...

  4. Extjs4.2 rest 与webapi数据交互----顺便请教了程序员的路该怎么走

    这一章接着上一篇 对于Ext.data.Store 介紹 与总结,以及对以前代码的重构与优化 1.对于更新OnUpdate()函数的修改:先上代码: function OnUpdate(record) ...

  5. 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子

      本文介绍了如何使用技术栈PyCharm+Qt Designer+PyQt5来开发桌面软件,从环境搭建.例子演示到对容易混淆概念的解释.文中用到的全部软件+代码下载链接为:https://url39 ...

  6. 程序员必看:如何降低APP软件开发的成本?

    程序员必看:如何降低APP软件开发的成本? 作为一名曾经的程序猿,一直想写一点东西给大家分享一下,今天终于动笔了,写写我们在开发的过程中怎样才能更快更好的进行开发,降低app开发成本.无论是个人开发者 ...

  7. 程序员之路:以Android证道

    大道三千,何以证道? 最近有私信.邮件给我咨询一些职业生涯规划的同学,我在这里以过来人的身份给大家一些建议. 任何行业,任何职位,无论高低,无论大小,都可以分为广博.精深两个方向. 精深自然指的是在某 ...

  8. 我的程序员之路:自学Java篇

    序章 时光疾驰,从事IT行业已两年有余. 16年11月开始自学Java,从此开启自学之路,后来实习期自学大数据.python.爬虫等,最终成长为一名平凡的程序员.回首望去,一路上的过往历历在目,有初学 ...

  9. 顶级c程序员之路 基础篇 - 第一章 关键字的深度理解 number-1

    c语言有32个关键字,每个关键字你都理解吗? 今天出场的是: auto ,  register,  static,   extern 为什么他们会一起呢,说到这里不得不谈到c语言对变量的描述. c给每 ...

随机推荐

  1. luogu P2331 [SCOI2005]最大子矩阵

    传送门 \[\huge\mathit{warning}\] \[\small\text{以下说明文字高能,请心脏病,,,,,,人士谨慎观看,请未成年人在家长陪同下观看}\] 皮这一下很开心 其实是代码 ...

  2. 第19月第2天 cellForItemAtIndexPath 返回空

    1. 动画需要获取当前的 Cell ,下面的调用在 viewDidLoad 中,有时候返回 nil,有时候成功. UICollectionView *cell = (UICollectionView* ...

  3. jzoj4313 电话线铺设(最小生成树+最近公共祖先)

    题面 \(solution:\) 这道题很奇妙,需要对kruskal重构树有足够的了解!我们先对王牌电缆实行kruskal重构树,然后我们再来枚举每一条李牌电缆,我们将某一条李牌电缆加进这棵树中必然构 ...

  4. Vue.js用脚手架创建项目

    安装全局脚手架 cnpm install vue-cli -g vue --version 用脚手架创建项目 创建项目 运行项目 停止项目:Ctrl+C 修改端口 config - index.js ...

  5. linux 下程序员专用搜索源码用来替代grep的软件ack(后来发现一个更快的: ag), 且有vim插件的

    发现一个比ack更快更好用的:  https://github.com/ggreer/the_silver_searcher   , 使用时命令为ag,它是基于ack的代码二次开发的,所有使用方法基本 ...

  6. ES系列十一、ES的index、store、_source、copy_to和all的区别

    1.基本概念 1.1._source 存储的原始数据._source中的内容就是搜索api返回的内容,如: { "query":{  "term":{   &q ...

  7. kafka系列七、kafka核心配置

    一.producer核心配置 1.acks :发送应答(默认值:1) 生产者在考虑完成请求之前要求leader收到的确认的数量.这控制了发送的记录的持久性.允许以下设置: acks=0:设置为0,则生 ...

  8. CentOS6.5编译安装Nginx1.8.1+MySQL5.5.48+PHP5.2.17+xcache3.2+ZendOptimizer-3.3.9

    一.安装Nginx: 1.解决依赖关系 编译安装nginx需要事先需要安装开发包组"Development Tools"和 "Development Libraries& ...

  9. myeclipse的web项目导入到eclipse中

    环境组成: java8 eclipse4.4.2 for javaee tomcat 7.0.61 1.导入myeclipse项目 2.设置JDK环境 3.将导入的项目修改为web项目 将myecli ...

  10. MyBatis返回Map键值对数据

    List<Map<String, String>> getMtypeList(); <select id="getMtypeList" resultT ...