专栏首页叶子陪你玩编程python图形用户界面(一):创建第一个GUI图形用户界面

python图形用户界面(一):创建第一个GUI图形用户界面

本系列课程是针对无基础的,争取用简单明了的语言来讲解,学习前需要具备基本的电脑操作能力,准备一个已安装python环境的电脑。如果觉得好可以分享转发,有问题的地方也欢迎指出,在此先行谢过。

前言

很多时候我们的程序运行结果都是一个黑黑的终端窗口,对于使用者来说并不是很友好,正如windows操作系统会有那么多人使用一样,用鼠标点点就可以了,如果是Linux那种命令行操作的话,那我相信很多人都不会愿意去使用,也很难普及。

之前讲过如何利用python自带的tkinter库编写用户界面程序,接下来的将会写如何利用Qt来编写用户界面程序。Qt 是由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。在python中,它的名字不叫Qt,而是叫做PySide2,但是功能是一样的,当然还有其它公司开发的PyQt5,功能也是一样的。至于为什么会有这么多不同名字和版本,感兴趣的可以自己去了解,我们这里要使用的是PySide2,它是Qt5在python中的版本。

安装模块

在使用前,我们需要先安装pyside2模块,这里有两种方法,直接使用pip install PySide2安装,第二种使用国内的镜像安装,速度会比较快。

一个最简单的PySide2程序

Qt有三个基本模块,这里我们先使用QtWidgets模块。QtWidgets:可以让你的应用程序使用 Widgets部件,包括 UI 的图形元素。

首先,我们使用pyside2官方网站上的一个案例程序,看看一个最基本的GUI程序是怎样,这里自己编写的时候一定要注意字母大小写的一个问题。

效果

PySide2程序基本结构

通过上面的程序,我们可以自己简单的总结一下,pyside2程序的基本结构:

1.导入要用的库和控件。2.创建程序管理器。3.要使用的控件和实现的功能。4.Qt主循环 和 程序退出管理器。

创建主窗口及标签部件

通过QWidget方法创建一个窗口,接着创建一个QLabel标签部件,将其绑定到window上,最后一起显示出来。

效果

总结

本文主要讲了如何如何创建一个最简单的用户界面程序,以及创建用户程序的一般步骤。

(全文完)


欢迎转载,转载请注明出处!

本文分享自微信公众号 - 叶子陪你玩编程(gh_cd062460d25e),作者:青叶子

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-03-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【python入门系类课程 第四课 循环的威力】

    本系列课程是针对无基础的,争取用简单明了的语言来讲解,学习前需要具备基本的电脑操作能力,准备一个已安装python环境的电脑。如果觉得好可以分享转发,有问题的地...

    用户7054460
  • python是如何利用穷举法去解数学问题?

    本系列课程是针对无基础的,争取用简单明了的语言来讲解,学习前需要具备基本的电脑操作能力,准备一个已安装python环境的电脑。如果觉得好可以分享转发,有问题的地...

    用户7054460
  • 如何使用程序来绘制图形?

    本系列课程是针对无基础的,争取用简单明了的语言来讲解,学习前需要具备基本的电脑操作能力,准备一个已安装python环境的电脑。如果觉得好可以分享转发,有问题的地...

    用户7054460
  • BZOJ1299: [LLH邀请赛]巧克力棒(Nim游戏)

    Description TBL和X用巧克力棒玩游戏。每次一人可以从盒子里取出若干条巧克力棒,或是将一根取出的巧克力棒吃掉正整数长度。TBL先手两人轮流,无法操...

    attack
  • 2017"百度之星"程序设计大赛 - 复赛1003&&HDU 6146 Pokémon GO【数学,递推,dp】

    Pokémon GO Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 32768/32768 K...

    Angel_Kitty
  • python selenium2 开发环境搭建

    环境搭建 基于python和selenium2做自动化测试,你必须会搭建基本的开发环境,掌握python基本的语法和一个IDE来进行开发,这里通过详细的讲解,介...

    苦叶子
  • 解决MyEclipse 8.6不能更新的问题

    大家知道,myeclipse官网屏蔽了大陆的IP,所以一般查看myeclipse官网得FQ。你可以使用在线代理(这是什么?请GOOGLE)查看网址。

    williamwong
  • 【编程基础】初学者如何学习Linux网络

    1. Linux网络编程--网络知识介绍 网络程序和普通的程序有一个最大的区别是网络程序是由两个部分组成的--客户端和服务器端. 1.1 客户端 在网络程序中,...

    程序员互动联盟
  • rem不是神农草,治不了移动端百病

    有很多朋友一聊起做移动端重构,第一个问题就是用什么单位合适。%,还是rem?(如果你还不太了解rem是什么单位,可先前往CSS3的REM设置字体大小了解。) 然...

    IMWeb前端团队
  • 数据结构之串

    基本概念 串(string)是由零个或多个字符组成的有限序列,又名叫字符串。形如s="a,b,c.."。ai(1 ≤ i ≤ n)可以是字母、数字或其他字符,i...

    xiangzhihong

扫码关注云+社区

领取腾讯云代金券