Python Gui框架简介

Thinter

Python语言本向内置的Gui框架是Thinter。官网介绍如下:

Tkinter: Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 Tkinter 可以在大多数的 Unix 平台下使用,同样可以应用在 Windows 和 Macintosh 系统里。Tk8.0 的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中。

上手容易,适合于简单的交互逻辑,但不适合大型的、交互复杂的程序。

wxPython

wxPython:wxPython 是一款开源软件,是 Python 语言的一套优秀的 GUI 图形库,允许 Python 程序员很方便的创建完整的、功能健全的 GUI 用户界面。

wxPython也可以实现较复杂的界面,但国内使用的人较少。

pyQt5

本文的主角,qt的python版本,anaconda发行版本已经内置,如果使用anaconda环境,pyqt5是开箱即用的。

Pyqt5开始Gui程序

网上有一些教程,建议使用pyqt的designer先排布控件,生成ui文件,然后通过相应的工具转换为python代码。

这样模式其实不灵活,后期修改和维护很麻烦,本文中使用完全手工的方式,排布控件,以及实现相应的交互逻辑。当然不能指望designer能够达到visual studio里C# winform这种易用性,C# win form应该是地表最强的Gui程序开发环境了,但没办法,C#有微软体系有其局限性,其不适合数据处理和人工智能程序的开发。

Pyqt5所有的控件都在QtWidgets这个命名空间下,直接导入即可以使用。

实现一个简单的例子:量化投资系统的主界面为例:

窗体外框及标题,icon就设置好了,很简单吧。

程序运行方式代码如下,初始化一个QApplication,然后初始化主窗口并显示即可以呈现窗体。

主窗口的菜单项与工具栏的实现也很简单:

关于作者:魏佳斌,互联网产品/技术总监,北京大学光华管理学院(MBA),特许金融分析师(CFA),资深产品经理/码农。偏爱python,深度关注互联网趋势,人工智能,AI金融量化。致力于使用最前沿的认知技术去理解这个复杂的世界。AI量化开源项目:

https://github.com/ailabx/ailabx

pyqt5优秀项目python_基于Pyqt5打造量化系统GUI相关推荐

  1. 基于matlab的图像处理系统GUI

    基于matlab的图像处理系统GUI,支持图像缩放,剪切,旋转,水平镜像,垂直镜像,参数还可以自己设置,边缘处理的五种算法:laplacian算法,Robert算法,canny算法,prewitt算法 ...

  2. java ee会员功能项目_基于jsp的会员系统-JavaEE实现会员系统 - java项目源码

    基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的会员系统, 该项目可用各类java课程设计大作业中, 会员系统的系统架构分为前后台两部分, 最终实现在线上进行会员 ...

  3. java卖车项目_基于jsp的汽车销售系统-JavaEE实现汽车销售系统 - java项目源码

    基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的汽车销售系统, 该项目可用各类java课程设计大作业中, 汽车销售系统的系统架构分为前后台两部分, 最终实现在线上 ...

  4. pyqt5优秀项目python_Python-PyQt5-第一个小项目--登录框--login

    Ps:水平有限,欢迎建议和挑错 我们在此之前,学习了PyQt的主窗口(QMainwindow),按钮(Qpushbutton),标签栏(QLabel),文本框编辑框(LineEdit)4个组件. 我们 ...

  5. 开源项目|基于darknet实现量化感知训练,已实现yolov3-tiny所有算子

    ◎本文为极市开发者「ArtyZe」原创投稿,转载请注明来源. ◎极市「项目推荐」专栏,帮助开发者们推广分享自己的最新工作,欢迎大家投稿.联系极市小编(fengcall19)即可投稿~ 量化简介 在实际 ...

  6. Java项目:基于SSM实现房屋租赁系统

    项目编号:BS-XX-023 本系统基于SSM(spring+springmvc+mybatis)框架实现开发,前端基于BootStrap框架实现,数据库采用MYSQL,开发工具为IDEA或ECLIP ...

  7. 看我如何基于PythonFacepp打造智能监控系统

    由于种种原因,最近想亲自做一个基于python&facepp打造的智能监控系统. 0×00:萌芽 1:暑假在家很无聊 想出去玩,找不到人.玩个lol(已卸载),老是坑人.实在是无聊至极,不过, ...

  8. 深度学习项目实战——基于多模态场景监控系统

    摘要 项目背景:这是分布式智能环卫系统项目,主要是针对小区物业.环卫公司和政府监管部门以及居民用户等使用的系统.为了小区物业更加智能化,环卫的托运效率提高,社区的管理高效,方便政府和街道部门的监控.而 ...

  9. Android项目:基于Android家庭理财系统手机软件设计(计算机毕业设计)

    每个家庭都希望过幸福美满的生活,但大多数人可能一生都无法满足.现代生活中我们除了追求精神上的财富不可缺少的也要追求房子.车子.高档理财等这些象征物质财富的东西.生活质量的保证,还是多数人努力追求的目标 ...

  10. Android项目:基于Android图书馆借阅系统app毕业设计(计算机毕业设计)

    目前,大多数基于Android平台的移动图书馆的主要功能集成了传统的馆藏图书查询.图书预约.图书续借等功能,较好地满足了人们随时随地访问图书馆的需要.但是,整个图书系统仍处在初期阶段,仍存在一些不足和 ...

最新文章

  1. 边缘AI是内存技术发展的催化剂
  2. 服务器监控报警系统软件设计,船舶机舱监控报警系统软件设计与实现
  3. GitHub 发布了一款重量级产品,可直接运行代码
  4. vue页面跳转数据传递
  5. 跟风写博---也谈值类型和引用类型
  6. vue-json-excel前端导出excel教程
  7. 设置Qt直接运行路径
  8. 提交数据网页设计_数据化时代,爬虫工程师才是真正“扛把子”
  9. 埃森哲:AI成新生产要素,2035年将中国经济增速提高1.6% | 附下载
  10. Java多线程之JUC包:CountDownLatch源码学习笔记
  11. Java创建型设计模式之简单工厂,工厂方法,抽象工厂
  12. python程序设计实验报告答案大全_Python程序设计实验三
  13. java 僵尸进程_僵尸进程ZOMBIE
  14. 互联网30年,总有人正年轻
  15. Mathematica/偏导数/最小二乘法(线性回归)
  16. 报错Takes no arguements解决办法
  17. 中文短文本分类实例十四-LEAM(Joint Embedding of Words and Labels for Text Classification)
  18. GitHub 上受欢迎的 Android UI Library 整理
  19. laravel view
  20. 易班自动打卡+钉钉机器人消息提醒

热门文章

  1. 打开struts-config.xml 报错 解决方法Could not open the editor
  2. Jtable 表格按多列排序(支持中文汉字排序)
  3. python3.5------用户的三次验证
  4. HoverTree.Model.ArticleSelect类的作用
  5. 五个最佳RSS新闻阅读器
  6. 逃逸分析、栈上分配、标量替换、同步消除、锁消除
  7. 字节码指令之方法调用与返回指令
  8. MyCat基于MySQL实现读写分离
  9. Java虚拟机内存管理
  10. Java中的内存模型JMM与线程