位置: 编程技术 - 正文

python GUI实例学习(python gui视频教程)

编辑:rootadmin

推荐整理分享python GUI实例学习(python gui视频教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python的gui编程,python gui视频教程,python3 gui编程,python gui程序,python gui教程,python的gui编程,python3 gui编程,python gui视频教程,内容如对您有帮助,希望把文章链接给更多的朋友!

在学习本篇之前,如果你对Python下进行GUI编程基础内容还有不明白,推荐一篇相关文章:简单介绍利用TK在Python下进行GUI编程的教程

写一个简单的界面很容易,即使是什么都不了解的情况下,这个文本转载了最简单的界面编写,下个文本介绍了TK的简单但具体的应用

在python中创建一个窗口,然后显示出来。

就3行就能够把主窗口显示出来了。root是一个变量名称,其代表了这个主窗口。以后创建控件的时候指定控件创建在什么窗口之中,就要用这个root来表示了。而Tk()是一个Tkinter库之中的函数(其实是类的构造函数,构造了一个对象)。而mainloop则是主窗口的成员函数,也就是表示让这个root工作起来,开始接收鼠标的和键盘的操作。你现在就能够通过鼠标缩放以及关闭这个窗口了。注意到窗口的标题是tk,我们可以进行一些修改

然后窗口的标题就变成了bitunion了。下面要作的是把这个窗口的内容填充一下,让其有一些东西。先加入一个标签,所谓标签就是一行字。

我们很惊讶的发现窗口变小了,但是其中多了一行字。变小了是因为窗口中已经放了东西了,python的Tkinter非常智能,能够根据内容自动缩放,而不用和传统的windows程序一样,手工的指定绝对坐标了。对于label,它还是一个变量而已。不过这个变量代表了一个标签,也就是那一行字。而这个label的创建是用Label,而Label的参数是root表明了这个控件是root主窗口的成员控件,或者说是子窗口。label['text']表示设置这个标签的text属性为'be on your own',也就是文字内容了。label.pack和root.mainloop一样费解,但是内涵一样深刻。你现在可以简单理解为把label显示出来的功能,因为你把pack去掉,那你就看不到东西了。其实pack是和控件的布局排版有关西的。

再添加一个按钮就能够有更加丰富的内容了,方法是很类似的。看着吧:

只不过把button替换了label而Button替换了Label。注意一下Button和Label这些都是Tkinter这些库提供的,而button和Button这样大小写之间的差别仅仅是巧合,你能够随便的给变量取名字,但是Button和Label这些则是需要记住的东西,写代码的时候要经常用到的名字。但是点击按钮你会比较失望,因为并没有什么反应。不过也是当然的事情,你并没有告诉计算机对于这样一个按钮的点击操作需要作出一个什么样的反应来反馈给用户。而这个指定作出什么反应的工作只需要一个行,但是作出具体什么样反应的描述则需要新建一个函数来进行处理。

button['command'] = on_click表示对于button(按钮)的点击属性用on_click这个函数来处理。而on_click函数也很简洁,只是把label的文本重新设置一下。这个完成了一个事件消息的处理,如果用C来写,需要比这个长更加不好懂的写法。另外你是否会对on_click中出现label这个变量比较奇怪呢?明明在on_click前面没有定义label这个变量啊。如果我在C中这么写程序,编译器一定会告诉我出错的。而python是怎么知道label这个变量存在,然后没有报错的呢?其实python在你写的时候根本就不用知道其是否存在,只是要在运行的时候找得到label就可以了。而运行的前后关系,是通过时间来关联的而不是代码上前后行的关系。这里由于label = Label(root)先于on_click执行,所以当on_click执行的时候,label就是一个已经定义的变量。如果没有定义呢?那就报告出错喽。

最后一个例子:

这个就比较复杂了。里面有一个StringVar。这个代表一个字符串,但是跟一般字符串不一样。一般的这样'dfsdf'的字符串是不可变的,你只能把变量指定为不同的字符串,但是字符串本身的内容是不可改变的。而StringVar则是可变的字符串。所以了set和get来设置和取得其内容。主要是entry(单行输入框)要求一个这样的属性来设置和接收其输入框的内容。

用Tkinter实现一个简单的GUI程序,单击click按钮时会在终端打印出'hello world':

当我们写一个较大的程序时,最好将代码分成一个或者是几个类,再看一下Hello World例子

python GUI实例学习(python gui视频教程)

看完了上面两个无聊的Hello World例子,再来看一个稍微Perfect点的东西吧。Menu组件,自己画一个像样点的程序外壳。

这个程序还是有点无趣,因为我们只是创建了一个顶级的导航菜单,点击后只是在终端中输出hello而已,下面来创建一个下拉菜单,这样才像一个正儿八经的应用大笑在下面的这个例子中,会创建三个顶级菜单,每个顶级菜单中都有下拉菜单(用add_command方法创建,最后用add_cascade方法加入到上级菜单中去),为每个下拉选项都绑定一个hello函数,在终端中打印出hello.

root.quit是退出这个Tk的实例。

写了这一些,差不多对Tkinter有了一个大体的印象了。在Python中用Tkinter绘制GUI界面还是蛮简单的。再把上面的例子扩展一下,和Label标签结合,当单击about的时候,在窗体上打印About的内容,而不是在终端输出。将about函数稍微修改一下。单击about以后将会调用about函数渲染frame绘制一个标签并显示其内容。

kinter的提供各种控件,如按钮,标签和文本框,一个GUI应用程序中使用。这些控件通常被称为控件或者部件。

目前有种Tkinter的部件。我们提出这些部件以及一个简短的介绍,在下面的表:

标准属性:

标准属性也就是所有控件的共同属性,如大小,字体和颜色等等。

几何管理:

Tkinter控件有特定的几何状态管理方法,管理整个控件区域组织,一下是Tkinter公开的几何管理类:包、网格、位置

Python中矩阵库Numpy基本操作详解 NumPy是一个关于矩阵运算的库,熟悉Matlab的都应该清楚,这个库就是让python能够进行矩阵话的操作,而不用去写循环操作。下面对numpy中的操作进行总结

Python实现打印螺旋矩阵功能的方法 本文实例讲述了Python实现打印螺旋矩阵功能的方法。分享给大家供大家参考,具体如下:一、问题描述输入N,打印N*N螺旋矩阵比如N=3,打印:N=4,

Python实现的归并排序算法示例 本文实例讲述了Python实现的归并排序算法。分享给大家供大家参考,具体如下:归并排序是建立在归并操作上的一种有效的排序算法,该算法是采用分

标签: python gui视频教程

本文链接地址:https://www.jiuchutong.com/biancheng/372317.html 转载请保留说明!

上一篇:Python实现判断一个字符串是否包含子串的方法总结(python的判断语句)

下一篇:Python中矩阵库Numpy基本操作详解(python numpy矩阵)

  • 车保险备注栏车船税如何记账
  • 车船税在备注栏怎么报表
  • 企业所得税成本费用大于发票金额的原因
  • 进项税加计扣除账务处理
  • 材料验收入库款项尚未支付
  • 代理进口产品需要什么手续
  • 工业企业水电费需要计提吗
  • 一台电脑上能装多个金税盘吗?
  • 建筑施工企业的安全生产许可证由哪里颁发
  • 2021年7月1日执行
  • 项目资本金是什么意思大白话
  • 收据能入账抵税吗
  • 汽车销售服务费话术
  • 国外客户要求退货
  • 公园门票可以开发票吗
  • 采用支付手续费方式委托代销商品
  • 先亏后盈法案例分析
  • 员工把发票丢了怎么处理
  • 电梯管理费属什么类别
  • 如何做预估成本
  • 盘盈的资产
  • 个人以房产投资一人有限公司时,房产要开发票吗
  • 收到税费返还是什么现金流量
  • win11安装更新时出现一些问题
  • 怎样跳过windows开机更新
  • .exe是啥
  • 企业的往来账款包括哪些
  • 营改增之前没有增值税吗
  • deskrun.exe是什么东西
  • php框架的作用
  • 公司给其他单位分红需要对方开票吗
  • kcleaner.exe是什么
  • 土地价款扣除会计分录
  • bat开源项目
  • 帝国cms真的很好用
  • 广告片影视公司
  • 员工迟到扣款怎么处理
  • 租房开的发票收的税怎么做账?
  • 银行回单应该如何处理
  • js读取json配置文件
  • 公司购买手机的发票
  • 公司向股东借的钱怎么还
  • 盈余公积提取是什么意思
  • 资产现金流量收益率为什么不是净利润除以平均现金流量
  • 哪些合同必须签订书面合同
  • 个体户需要给员工买五险一金吗
  • 有哪些企业项目
  • 预缴税款是什么税款
  • 餐饮无票收入怎么做账
  • 进项税认证怎么按税率统计明细
  • 硕士研究生个税专项扣除
  • 营业外支出增加说明了什么
  • 网上打印的银行流水有公章吗
  • 施工方怎么开发票
  • mysql进阶之路
  • 请问linux
  • 电脑windowsxp无法启动怎么办
  • mac系统操作的小技巧
  • linuxssh免密码登录
  • win10右键菜单管理在哪打开
  • 苹果mac电脑不会关机
  • win7复制粘贴快捷键经常失效
  • cocos2d游戏源码
  • android 多个activity
  • cocos2dx-3.x(三)、场景切换及可能产生的错误
  • c++11视频教程
  • unity的vector3
  • 3行程序搞定SVM分类-用JAVA程序调用LibSVM API 最简单的示例
  • CentOS下mysql定时备份Shell脚本分享
  • unity鼠标控制物体移动
  • 安卓调用系统相机
  • javascript基础入门视频教程
  • jquery实现点击按钮
  • python 元类的作用
  • python画足球
  • 临时工工资需要申报吗
  • 电子税务局登录不上,显示用户名不匹配
  • 辽宁省国家税务总局
  • 上海川沙十八铺市场
  • 在烟台如何发布招聘信息
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设