什么是GUI编程
GUI是什么–简介
- GUI的核心技术:AWT,Swing
-
GUI的全称为Graphical User Interface,图形化界面或图形用户接口,是指采用图形方式显示的计算机操作环境用户接口。
与早期计算机使用的
命令行
界面相比,图形界面对于用户来说更为简便易用。
GUI的广泛应用是当今计算机发展的重大成就之一,它极大地方便了非专业用户的使用人们从此不再需要死记硬背大量的命令,取而代之的是通过窗口、菜单、按键等方式来方便地进行操作。而嵌入式GUI具有下面几个方面的基本要求:
轻型、占用资源少、高性能、高可靠性、便于移植、可配置等特点。
用
Python
语言开发
跨平台
的图形界面的程序,主要有3种选择
Python
跨平台
-
PyQT:
PyQt5是Qt v5的Python版本,功能强大复杂,提供QT Designer设计UI (GPL V3协议,开源,商用收费) -
Pyside:
PySide2是来自QT for Python项目的官方Python模块 (LGPL协议,闭源商用) -
Tkinter:
Python标准库,Tk GUI 工具包的接口 ,布局通过代码实现,简单易用,但开发效率低。(IDLE就是Tkinter编写) -
WxPython:
开源免费,提供wxFormbuilder,压缩版PyQT
PySide2、PyQt5 简介
PySide2、PyQt5 都是基于著名的 Qt 库。
Qt库里面有非常强大的图形界面开发库,但是Qt库是C++语言开发的,PySide2、PyQt5可以让我们通过Python语言使用Qt。
两个库的使用 对程序员来说,差别很小:它们的调用接口几乎一模一样。
如果你的程序是PyQt5开发的,通常只要略作修改,比如把导入的名字从 PyQt5 换成 PySide2 就行了。反之亦然。
PyQt是什么
Qt是一个C++可视化开发平台,是一个跨平台的C++图形用户界面应用程序
框架
(C++ GUI),能够为应用程序开发者提供建立图形用户界面所需的功能。Qt是完全面向对象的、易扩展,可应用于组件编程,并可以用于嵌入式开发。
PyQt是一个创建Python
GUI
应用程序的工具包,是Qt和Python结合的一个产物,可以说是为了将Qt的功能用于Python开发的一个Qt的Python包装器。它是Python编程语言和Qt库的成功融合。
PyQt的整个程序开发框架,主要包括如下部分:
-
图形界面编辑的工具:
Qt Designer
- 不同部分信息交换机制:信号和槽
- 界面操作的事件及捕获机制
- 一套控制界面显示和数据存储分离以及映射的机制:Model/View架构
QtDesigner,PyUic,PyRcc
QtDesigner,
也是用来做UI的,只不过是直接通过Qt语言来进行UI设计的,同时,还支持拖拽式的UI设计。
PyUic
,就是一个用来将QtDesigner代码转化成Python代码的;
PyRcc
,就是将图片、数据文件资源打包成py文件的。QtDesigner中管理资源文件(图片、数据文件)是通过.qrc文件来管理的。pyQt生成的应用程序,引用图片通常是将资源文件装换为 python 文件,然后引用资源文件,而不能直接加载资源文件。而pyrcc就是将.qrc文件转化成.py文件的。