Pyqt5学习笔记(一)
Python已有的GUI框架:
Tkinter(python内嵌的GUI环境,使用TCL实现,易学易用,方便简单创GUI自带无需安装,适用于Unix、Windows和Mac系统组,在Tk8.0的后续版本可以实现本地窗口风格并运行在绝大多数平台中)
Wxpython(跨平台,由C++编写,文档少遇到问题不容易解决,能运行在Windows、Unix、Macintosh OS系统中)、
pygtk(用于Linux系统多些,Windows下兼容会有一些问题;pygtk真正具有跨平台能力,它能不加修改的,稳定运行各种操作系统之上,如Unix、Windows,MacOS等。)、
pyqt(C++编写,跨平台特性好、本地显示效果(在哪跑程序是那个的效果,Windows下是Windows的效果,Linux下是Linux的效果);方便打包二进制文件;商业程序需要购买商业版授权)、他是python跟qt库的成功融合。Qt库是目前最强大的库之一。
pyside(诺基亚亲儿子):(python对Qt的封装,与pyqt的API一致)、
kivy(python和cython编写,开源,针对多点触摸应用,全平台支持)
为什么使用pyqt
学会等于学会了Qt,开发迅速,Qtdesigner实现GUI拖拽布局所见即所得
学习经验容易迁移到pyside,开发商用应用
方便打包
GUI框架的显示效果,运行平台:
GUI显示效果与当前平台兼容且在色彩边框上与系统相同,可运行于Linux、Windows、MacOS等系统。
GUI框架的学习成本比较
Pyqt5 GUI学习成本相对较低,可以快速的学会并掌握。
GUI框架的开发效率比较
由于pyqt5的开发界面是可视的我们可以根据自己的需求创建自己所需要的按键或者显示的位位置也可以自己放置,所以开发效率相对较高。
选定GUI框架,制定学习计划
根据以上的回答我们应该选择pyqt5学习,在学习计划方面应先学习如何安装pyqt5,然后掌握pyqt5的基本功能、布局管理、菜单和工具;最后对pyqt5中所应该放置的事件和信号、对话框、pyqt5控件、绘图等功能进行了解。
本人第一篇博客,如有错误希望能提出。
Pyqt5学习笔记(一)的更多相关文章
- PyQt5学习笔记-从主窗体打开一个子窗体
PyQt5学习笔记-从主窗体打开一个子窗体 软件环境: Eric6+Python3.5+PyQt5 试验目标: 1.点击菜单项Open,打开一个子窗体 2.点击按钮Open,打开一个子窗体 主窗体设计 ...
- PyQt5学习笔记----标准文件打开保存框QFileDialog
单个文件打开 QFileDialog.getOpenFileName()多个文件打开 QFileDialog.getOpenFileNames() 文件夹选取 QFileDialog.getE ...
- PYQT5学习笔记之各模块介绍
Qtwidgets模块包含创造经典桌面风格的用户界面提供了一套UI元素的类 Qtwidegts下还有以下常用对象,所以一般使用Qtwidegts时会使用面向对象式编程 QApplication: ap ...
- PyQt5学习笔记14----初识pyqt多线程操作
转载:翻滚吧挨踢男 首先来看一个例子: # coding=utf-8 __author__ = 'a359680405' from PyQt5.QtCore import * from PyQt5.Q ...
- Python pyQt4/PyQt5 学习笔记4(事件和信号)
信号 & 槽 import sys from PyQt5.QtCore import Qt from PyQt5.QtWidgets import (QWidget,QLCDNumber,QS ...
- Python pyQt4/PyQt5 学习笔记3(绝对对位,盒布局,网格布局)
本节研究布局管理的内容. (一)绝对对位 import sys from PyQt4 import QtGui class Example(QtGui.QWidget): def __init__( ...
- Python pyQt4/pyQt5 学习笔记2(状态栏、菜单栏和工具栏)
例子:状态栏.菜单栏和工具栏 import sys from PyQt4 import QtGui class Example(QtGui.QMainWindow): def __init__(sel ...
- Python pyQt4/pyQt5 学习笔记1(空白窗口,按钮,控件事件,控件提示,窗体显示到屏幕中间,messagebox)
PyQt4是用来编写有图形界面程序(GUI applications)的一个工具包.PyQt4作为一个Python模块来使用,它有440个类和超过6000种函数和方法.同时它也是一个可以在几乎所有主流 ...
- PyQt5学习笔记
setMouseTracking bool mouseTracking这个属性保存的是窗口部件跟踪鼠标是否生效.如果鼠标跟踪失效(默认),当鼠标被移动的时候只有在至少一个鼠标按键被按下时,这个窗口部件 ...
随机推荐
- Kubernets二进制安装(15)之安装部署coredns
在运维主机上(mfyxw50.mfyxw.com)准备Coredns镜像文件,以docker镜像文件的方式部署到Kubernetes集群中去. 1.下载coredns镜像 [root@mfyxw50 ...
- Java之浅拷贝和深拷贝
[概述] Java中的对象拷贝 ( Object Copy ) 是指将一个对象的所有属性(成员变量)拷贝到另一个有着相同类类型的对象中去.例如,对象 A 和对象 B 都属于类 S,具有属性 a 和 b ...
- μC/OS-III---I笔记12---任务管理
任务管理任务切换应该算是UCOS最基本的部分,首先保存当前任务寄存器的内容到当前任务的堆栈:接着弹出即将进行的任务的堆栈内容到寄存器中然后就是按寄存器内容执行,这个过程成为上下文切换.任务堆栈在创建任 ...
- 使用 js 实现十大排序算法: 堆排序
使用 js 实现十大排序算法: 堆排序 堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法. 大顶堆:每个节点的值都大于或等于其子节点的值,在堆排序算法中用于升序排列: 小顶堆:每个 ...
- Keep Fitness
Keep Fitness 健身 keep health 训练流程 Part 1 热身 5-10分钟 Part 2 肌肉力量训练 30分钟 大肌群包括:胸.背.腿.臀: 小肌群包括:肩.二头肌.三头肌. ...
- SVG 与 Canvas 对比
SVG 与 Canvas 对比 技术选型 SVG vs Canvas 应用场景 性能 GPU 加速 XML 数据存储 Canvas 2D Canvas 3D WebGL / OpenGL ES thr ...
- JavaScript Inheritance All in One
JavaScript Inheritance All in One constructor inheritance prototype chain inheritance "use stri ...
- Flutter App 真机调试
Flutter App 真机调试 Deploy to iOS devices https://flutter.dev/docs/get-started/install/macos#deploy-to- ...
- react hooks & component will unmount & useEffect & clear up
react hooks & component will unmount & useEffect & clear up useEffect & return === u ...
- DOMParser & SVG
DOMParser & SVG js parse html to dom https://developer.mozilla.org/zh-CN/docs/Web/API/DOMParser ...