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 optparse模块使用实例
Apr 09 Python
使用Python中的线程进行网络编程的入门教程
Apr 15 Python
Pycharm学习教程(6) Pycharm作为Vim编辑器使用
May 03 Python
Python Socket实现简单TCP Server/client功能示例
Aug 05 Python
python爬虫_实现校园网自动重连脚本的教程
Apr 22 Python
Python下使用Scrapy爬取网页内容的实例
May 21 Python
Python可迭代对象操作示例
May 07 Python
11个Python3字典内置方法大全与示例汇总
May 13 Python
Pandas的read_csv函数参数分析详解
Jul 02 Python
如何用Python破解wifi密码过程详解
Jul 12 Python
Python控制台输出俄罗斯方块的方法实例
Apr 17 Python
如何正确理解python装饰器
Jun 15 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设计模式 Facade(外观模式)
2011/06/26 PHP
php多文件上传实现代码
2014/02/20 PHP
thinkphp实现图片上传功能分享
2014/03/04 PHP
destoon网站转移服务器后搜索汉字出现乱码的解决方法
2014/06/21 PHP
php实现的九九乘法口诀表简洁版
2014/07/28 PHP
实例讲解PHP验证邮箱是否合格
2019/01/28 PHP
asp.net和php的区别点总结
2019/10/10 PHP
PHP 使用位运算实现四则运算的代码
2021/03/09 PHP
硬盘浏览程序,保存成网页格式便可使用
2006/12/03 Javascript
基于jQuery的仿flash的广告轮播
2010/11/05 Javascript
Jquery截取中文字符串的实现代码
2010/12/22 Javascript
关于jQuery object and DOM element
2013/04/15 Javascript
js和jquery对dom节点的操作(创建/追加)
2013/04/21 Javascript
网页整体变灰白色(兼容各浏览器)实例
2013/04/21 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
2014/10/11 Javascript
JavaScript fontsize方法入门实例(按照指定的尺寸来显示字符串)
2014/10/17 Javascript
js数组的操作指南
2014/12/28 Javascript
JavaScript获取网页表单action属性的方法
2015/04/02 Javascript
js简单判断移动端系统的方法
2016/02/25 Javascript
jQuery实现动态删除LI的方法
2017/05/30 jQuery
python zip文件 压缩
2008/12/24 Python
尝试使用Python多线程抓取代理服务器IP地址的示例
2015/11/09 Python
Python实现PS滤镜特效之扇形变换效果示例
2018/01/26 Python
python利用百度AI实现文字识别功能
2018/11/27 Python
使用Tensorflow实现可视化中间层和卷积层
2020/01/24 Python
最简单的matplotlib安装教程(小白)
2020/07/28 Python
中间件的定义
2016/08/09 面试题
学校门卫工作职责
2013/12/07 职场文书
工程项目经理岗位职责
2013/12/15 职场文书
高校教师思想汇报
2014/01/11 职场文书
咖啡书吧创业计划书
2014/01/13 职场文书
药品促销活动方案
2014/02/14 职场文书
开学季活动策划方案
2014/02/28 职场文书
补充协议书范本
2014/04/23 职场文书
Go各时间字符串使用解析
2021/04/02 Golang
Java8 Stream API 提供了一种高效且易于使用的处理数据的方式
2022/04/13 Java/Android