Python GUI界面编程-初识
图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。然而这界面若要通过在显示屏的特定位置,以"各种美观而不单调的视觉消息"提示用户"状态的改变",势必得比简单的消息呈现花上更多的计算能力。
GUI概述
图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。然而这界面若要通过在显示屏的特定位置,以"各种美观而不单调的视觉消息"提示用户"状态的改变",势必得比简单的消息呈现花上更多的计算能力。在 GUI 中,并不只是键入文本和返回文本,用户可以看到窗口、按钮、文本框等图形,而且可以用鼠标单击,还可以通过键盘键入,GUI 是与程序交互的一种不同的方式。
Python GUI常用框架
Flexx
Flexx是一个纯Python工具包,用于创建图形用户界面(GUI),它使用Web技术进行渲染。 应用程序完全用Python编写;PScript转换器动态生成必要的JavaScript。
Python GUI界面编程-初识Python GUI界面编程-初识
项目地址:https://github.com/flexxui/flexx
入门指南:https://flexx.readthedocs.io/en/stable/guide/index.html
安装
Flexx需要Python 3.5+,也适用于pypy。 此外,它还依赖以下的库:
Tornado库(纯Python)。
PScript库(纯Python flexxui项目)
Webruntime库(纯Python flexxui项目)
Dialite库(纯Python flexxui项目)
要安装最新版本(和依赖项),请使用以下任一命令:
pip install flexx
conda install flexx -c conda-forge
或者用以下方法来获得更新:
pip install https://github.com/flexxui/flexx/archive/master.zip
wxPython
wxPython是用于Python编程语言的跨平台GUI工具箱。它允许Python程序员轻松,轻松地创建具有健壮,功能强大的图形用户界面的程序。它是作为一组Python扩展模块实现的,这些模块包装了用C ++编写的流行wxWidgets跨平台库的GUI组件 。
官网:https://www.wxpython.org/
Python GUI界面编程-初识Python GUI界面编程-初识
Kivy
Kivy是开源Python函式库,用于开发行动应用程序和其它采用自然用户界面的多点触控应用软件。它可以在Android,iOS,Linux,OS X和Windows执行。采用MIT授权条款,Kivy是自由并且开源的软件。
Python GUI界面编程-初识Python GUI界面编程-初识
官网:https://kivy.org/
PyQt
PyQt是Qt公司 Qt应用程序框架的一组Python v2和v3绑定,可在Qt支持的所有平台上运行,包括Windows,OS X,Linux,iOS和Android。PyQt5支持Qt v5。PyQt4支持Qt v4,并将针对Qt v5进行构建。绑定是作为一组Python模块实现的,包含1000多个类。
官网:https://www.riverbankcomputing.com/software/pyqt/intro
Python GUI界面编程-初识Python GUI界面编程-初识
Tkinter
Tkinter 是使用 python 进行窗口视窗设计的模块。Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口。作为 python 特定的GUI界面,是一个图像的窗口,tkinter是python 自带的,可以编辑的GUI界面,我们可以用GUI 实现很多直观的功能,比如想开发一个计算器,如果只是一个程序输入,输出窗口的话,是没用用户体验的。所有开发一个图像化的小窗口,就是必要的。
Python GUI界面编程-初识Python GUI界面编程-初识
索引:https://wiki.python.org/moin/TkInter
Pywin32
Windows Pywin32允许你像VC一样的形式来使用PYTHON开发win32应用。代码风格可以类似win32 sdk,也可以类似MFC,由你选择。如果你仍不放弃vc一样的代码过程在python下,那么这就是一个不错的选择。
项目地址:https://github.com/mhammond/pywin32
PyGTK
PyGTK让你用Python轻松创建具有图形用户界面的程序
Python GUI界面编程-初识Python GUI界面编程-初识
官网:https://pygobject.readthedocs.io/en/latest/
创建应用程序
使用wxPython框架
安装
Windwos与MAC平台使用pip工具安装wxPython只需要一行命令:
pip install -U wxPython
Python GUI界面编程-初识Python GUI界面编程-初识
Linux平台:
由于发行版和wx端口(GTK2或GTK3)有多种选项,因此文件不能全部位于同一文件夹中,以便通过pip轻松访问。这只是意味着您需要进一步细化以找到要提供给pip的URL。例如,要获取适用于Ubuntu 16.04(和16.10,LinuxMint 18以及其他版本)的GTK3 wxPython构建,可以使用如下pip命令:
pip install -U \
-f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-16.04 \
wxPython
准备
注意:本部分知识来源与网络
使用wxPython之前,先了解两个基础对象:应用程序对象和顶级窗口。
应用程序对象管理主事件循环,主事件循环是wxPython程序的动力。如果没有应用程序对象,wxPython应用程序将不能运行。
顶级窗口通常用于管理最重要的数据,控制并呈现给用户。
两个基础对象和应用程序的其他部分之间的关系如下图所示:
Python GUI界面编程-初识Python GUI界面编程-初识
这个应用程序对象拥有顶级窗口和主循环事件。顶级窗口管理其窗口中的组件和其他的分配给它的数据对象。窗口和它的组件触发的事件基于用户的动作,并接受事件通知以便改变显示。
Hell Word
代码:
import wx
app = wx.App(False)
frame = wx.Frame(None,wx.ID_ANY,"Hello,world!!!_Linux就该这么学")
frame.Show(show=True)
app.MainLoop()Python GUI界面编程-初识Python GUI界面编程-初识解析:Python GUI界面编程-初识Python GUI界面编程-初识注意:
可以用-1来替代wx.ID_ANY,-1 就是默认值的意思。另外wxWidgets还提供了其它的标准 ID(v2.8)。 你也可以自定义一个ID,但Getting Started with wxPython 认为,没有理由那样做,用标准ID更好。
wx.Frame的完整语法是:
wx.Frame(parent, id=-1, title="", pos=wx.DefaultPosition,size=wx.DefaultSize, style=wx.DEFAULT_FRAME_STYLE,name="frame")
parent:框架的父窗口。如果是顶级窗口,这个值是None。
id:关于新窗口的wxPython ID号。通常设为-1,让wxPython自动生成一个新的ID。
title:窗口的标题。
pos:一个wx.Point对象,它指定这个新窗口的左上角在屏幕中的位置。在图形用户界面程序中,通常(0,0)是显示器的左上角。这个默认值(-1,-1)将让系统决定窗口的位置。
size:一个wx.Size对象,它指定这个窗口的初始尺寸。这个默认值(-1,-1)将让系统决定窗口的初始尺寸。
style:指定窗口的类型的常量。可以使用或运算来组合它们。
name:框架内在的名字。可以使用它来寻找这个窗口。
Python GUI界面编程-初识篇到此结束,感谢您的阅读,愿您可从此文获取收获。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
手把手教你利用Pyecharts库对IP代理数据进行数据可视化分析
/1 前言/ 前几天小编发布了手把手教你使用Python爬取西次代理数据(上篇)和手把手教你使用Python爬取西次代理数据(下篇),木有赶上车的小伙伴,可以戳进去看看。今天小编带对爬取的数据进行可视化操作,数据可视化主要利用 pyecharts 库进行操作,具体步骤如下。 本次爬虫的目的主要是想分析代理在全国各城市的分布情况。小编的思路是对所有城市的代理数量进行一个统计,然后通过可视化技术构建一个代理热力分布图。整体思路是使用 pyecharts 构建一张热力分布图,用以直观展现各个城市的代理分布情况。 /2 代理分布统计/ Pyecharts 在进行热力图绘制的时候,需要提供城市名,但实际上从网上爬取到的位置数据并不是标准的城市名: 这个时候需要我们对这些数据进行处理,从位置中将城市名提取出来,例如:湖北十堰 需要提取出 十堰 来。 为了达到这个目的,我使用开源的** cpca** 库进行提取,该库主要使用结巴分词对数据进行处理,然后比对数据库,将省市县提取出来,一个直观的例子如下: 通过这种方式,我们就可以提取出城市名了,在然后在代码中实现如下: 提取完城市数据之后,需要对城市的...
- 下一篇
用C++模拟蚊子的运动来检验概率论内容
用C++模拟蚊子的运动来检验概率论内容 背景:在一个很大的方形透明容器内,从某个位置放入适量的蚊子,等待几分钟后观察蚊子的分布. include include include define random(a,b) (rand() % (b-a+1))+ a using namespace std; int main() { srand((int)time(0)); int x; int a[20001] = {0};//哈希数组,用于记录蚊子的位置 int temp; for(int i = 0;i < 1000;++i) {//循环1000次代表放进1000只蚊子 x = 0;//x坐标为0,代表蚊子从容器中间放入 for(int j = 0;j < 20000;++j) {//循环20000次代表蚊子运动20000次 temp = random(0,200) - 100;//随机蚊子运动一次的距离,在-100到100之间 x += temp; while(x < -10000 || x > 10000) {//若蚊子运动超出边界,则重新随机,直到蚊子的位置...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Red5直播服务器,属于Java语言的直播服务器
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS6,CentOS7官方镜像安装Oracle11G
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS关闭SELinux安全模块
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16