Python Tkinter实例——模拟掷骰子


Posted in Python onOctober 24, 2020

什么是Tkinter?

Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。

由于 Tkinter 是内置到 python 的安装包中、只要安装好 Python 之后就能 import Tkinter 库、适合初学者入门、小型应用的开发 。简单的代价就是功能薄弱了,有相当多的需求需要依赖其他的库。不像PyQT、wxPython这些功能强大的框架。

需要导入的模块

  • Tkinter:建立图形界面
  • Random:生成随机数
  • Image,Imagetk:从PIL导入,即Python Imaging Library。我们使用它来执行涉及UI中图像的操作
import tkinter
from PIL import Image, ImageTk
import random

创建主程序窗口

# 创建主窗口
root = tkinter.Tk()
root.geometry('400x400')
root.title('掷骰子')

Python Tkinter实例——模拟掷骰子

如图所示,创建了一个图形界面窗口

在窗口中添加图像显示区域

# 图片文件
dice = ['die1.png', 'die2.png', 'die3.png', 'die4.png', 'die5.png', 'die6.png']
# 使用随机数模拟骰子并生成图像
diceimage = ImageTk.PhotoImage(Image.open(random.choice(dice)))

label1 = tkinter.Label(root, image=diceimage)
label1.image = diceimage
# 放置在窗口中 
label1.pack(expand=True)

现在我们每次运行程序将得到一个随机骰子点数的图像

说明

expand声明为true,即使调整窗口大小,图像也始终保留在中心

创建按钮,模拟掷骰子

# 添加按钮所实现的功能
def rolling_dice():
  diceimage = ImageTk.PhotoImage(Image.open (random.choice(dice)))
  # 更新图片
  label1.configure(image=diceimage)
  label1.image = diceimage

# 添加按钮 设置按钮样式 实现上面所定义的功能
button = tkinter.Button(root, text='掷骰子', fg='red', command=rolling_dice)
# 放置在窗口中
button.pack( expand=True)

Python Tkinter实例——模拟掷骰子

总结:

非常简单的小程序,适合初学者入门。 

以上就是Python Tkinter实例——模拟掷骰子的详细内容,更多关于Python Tkinter的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python运行报错UnicodeDecodeError的解决方法
Jun 07 Python
Django URL传递参数的方法总结
Aug 28 Python
简单了解OpenCV是个什么东西
Nov 10 Python
PIL图像处理模块paste方法简单使用详解
Jul 17 Python
python内存监控工具memory_profiler和guppy的用法详解
Jul 29 Python
使用virtualenv创建Python环境及PyQT5环境配置的方法
Sep 10 Python
详解有关PyCharm安装库失败的问题的解决方法
Feb 02 Python
python使用梯度下降和牛顿法寻找Rosenbrock函数最小值实例
Apr 02 Python
win10安装python3.6的常见问题
Jul 01 Python
Python同时处理多个异常的方法
Jul 28 Python
python 星号(*)的多种用途
Sep 21 Python
python解包概念及实例
Feb 17 Python
Python+OpenCV图像处理——图像二值化的实现
Oct 24 #Python
python 下划线的不同用法
Oct 24 #Python
python 写一个性能测试工具(一)
Oct 24 #Python
Django admin组件的使用
Oct 24 #Python
Python数据可视化常用4大绘图库原理详解
Oct 23 #Python
Python+OpenCV图像处理——实现轮廓发现
Oct 23 #Python
python 带时区的日期格式化操作
Oct 23 #Python
You might like
PHP XML和数组互相转换详解
2016/10/26 PHP
php文件上传 你真的掌握了吗
2016/11/28 PHP
dreamweaver 安装Jquery智能提示
2011/04/02 Javascript
addEventListener和attachEvent二者绑定的执行函数中的this不相同
2012/12/09 Javascript
jquery多选项卡效果实例代码(附效果图)
2013/03/23 Javascript
js中AppendChild与insertBefore的用法详细解析
2013/12/16 Javascript
javascript中打印当前的时间实现思路及代码
2013/12/18 Javascript
使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法
2015/09/16 Javascript
js正则表达式验证邮件地址
2015/11/12 Javascript
JS获取一个未知DIV高度的方法
2016/08/09 Javascript
详解AngularJS用Interceptors来统一处理HTTP请求和响应
2017/06/08 Javascript
vue组件中的数据传递方法
2018/05/14 Javascript
Vue监听一个数组id是否与另一个数组id相同的方法
2018/09/26 Javascript
jQuery实现的3D版图片轮播示例【滑动轮播】
2019/01/18 jQuery
微信小程序动画组件使用解析,类似vue,且更强大
2019/08/01 Javascript
layer的prompt弹出框,点击回车,触发确定事件的方法
2019/09/06 Javascript
javascript跳转与返回和刷新页面的实例代码
2019/11/20 Javascript
swiper实现异形轮播效果
2019/11/28 Javascript
Python os模块介绍
2014/11/30 Python
Python 详解基本语法_函数_返回值
2017/01/22 Python
python调用staf自动化框架的方法
2018/12/26 Python
java判断三位数的实例讲解
2019/06/10 Python
Django中的用户身份验证示例详解
2019/08/07 Python
python GUI库图形界面开发之PyQt5控件数据拖曳Drag与Drop详细使用方法与实例
2020/02/27 Python
python缩进长度是否统一
2020/08/02 Python
python 对xml解析的示例
2021/02/27 Python
localStorage的过期时间设置的方法详解
2018/11/26 HTML / CSS
德国香水、化妆品和护理产品网上商店:Parfumdreams
2018/09/26 全球购物
沙特阿拉伯排名第一的在线时尚购物应用程序:1Zillion
2020/08/08 全球购物
水电维修专业推荐信
2014/09/06 职场文书
2014大学生批评与自我批评思想汇报
2014/09/21 职场文书
单方离婚协议书范本2014
2014/10/28 职场文书
2014年图书管理员工作总结
2014/12/01 职场文书
2015年度优秀员工推荐信
2015/03/23 职场文书
经费申请报告范文
2015/05/18 职场文书
教师节领导致辞
2015/07/29 职场文书