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这个属性保存的是窗口部件跟踪鼠标是否生效.如果鼠标跟踪失效(默认),当鼠标被移动的时候只有在至少一个鼠标按键被按下时,这个窗口部件 ...
随机推荐
- Bing壁纸-20200417
- Operating System:操作系统启动总结
现代操作系统的启动引导过程会有所差异,本文仅针对Intel x86系列作讲解,了解原理即可. 系统引导过程总体介绍 系统引导过程主要由以下几个步骤组成(以硬盘启动为例)1.开机:2.BIOS加电自检( ...
- Nginx基础 - 配置缓存web服务
1.缓存配置语法 1)proxy_cache配置语法 Syntax: proxy_cache zone | off; Default: proxy_cache off; Context: http, ...
- 1054D Changing Array 【位运算+思维】
题目:戳这里 题意:两个数n,k,满足给的n个数小于2的k次方.每个数可以进行一次操作,即把a[i]换成a[i]^(1<<k-1);求最多的连续区间数使得 区间[L,R] (1<=L ...
- SMB relay
SMB relay 0x00 SMB服务 先来了解一下什么是 SMB 服务,SMB(Server Message Block)是一个协议名称,用它可以共享计算机之间的文件.打印机.串口等,通过 SMB ...
- 关于谷歌浏览器不支持html5中audio的autoplay解决方法(js代码解决)
当我们直接写autoplay时,在chrome中浏览器并没有自动播放音频: 如果直接通过js来调用audio的play()方法也不行: 控制台还会报错 大概意思:play()调用失败,因为用户没有与文 ...
- 通过改写 原始对象的paint 方法,来设置对象的border颜色
解决方案: //通过改写 原始对象的paint 方法,来设置对象的border颜色 1. package test1;import java.awt.Color;import java.awt.Gra ...
- javascript & call & apply & bind & new
javascript & call & apply & bind & new Javascript call() & apply() vs bind()? ht ...
- 微软 AI 公开课
微软 AI 公开课 https://github.com/microsoft/ai-edu https://school.azure.cn/ https://docs.microsoft.com/le ...
- node.js & ORM & ODM
node.js & ORM & ODM ODM & NoSQL Object Data Modeling 对象数据模型 Object Document Mapping 对象文档 ...