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爬虫之爬虫的定义及URL构成
Nov 04 Python
Python新手实现2048小游戏
Mar 31 Python
python fabric实现远程部署
Jan 05 Python
python中MethodType方法介绍与使用示例
Aug 03 Python
Python基于socket实现简单的即时通讯功能示例
Jan 16 Python
Python版名片管理系统
Nov 30 Python
Python 3.3实现计算两个日期间隔秒数/天数的方法示例
Jan 07 Python
python游戏开发之视频转彩色字符动画
Apr 26 Python
解决Python设置函数调用超时,进程卡住的问题
Aug 08 Python
softmax及python实现过程解析
Sep 30 Python
解决Pycharm双击图标启动不了的问题(JetBrains全家桶通用)
Aug 07 Python
selenium如何定位span元素的实现
Jan 13 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 list()函数的详解
2013/06/05 PHP
Yii框架form表单用法实例
2014/12/04 PHP
php结合md5实现的加密解密方法
2016/01/25 PHP
Laravel 5.3 学习笔记之 错误&日志
2016/08/28 PHP
PHP数字金额转换成中文大写显示
2019/01/05 PHP
Javascript实例教程(19) 使用HoTMetal(6)
2006/12/23 Javascript
自己动手实现jQuery Callbacks完整功能代码详解
2013/11/25 Javascript
jquery删除指定的html标签并保留标签内文本内容的方法
2014/04/02 Javascript
js 弹出新页面避免被浏览器、ad拦截的一种新方法
2014/04/30 Javascript
一个小例子解释如何来阻止Jquery事件冒泡
2014/07/17 Javascript
js+html5实现可在手机上玩的拼图游戏
2015/07/17 Javascript
基于jQuery实现的打字机效果
2017/01/16 Javascript
jQuery手风琴的简单制作
2017/05/12 jQuery
JS实现仿微信支付弹窗功能
2018/06/25 Javascript
一篇文章介绍redux、react-redux、redux-saga总结
2019/05/23 Javascript
layui table 获取分页 limit的方法
2019/09/20 Javascript
JSONP 的原理、理解 与 实例分析
2020/05/16 Javascript
[06:23]2014DOTA2西雅图国际邀请赛 小组赛7月12日TOPPLAY
2014/07/12 DOTA
[16:56]heroes英雄教学 司夜刺客
2014/09/18 DOTA
Python连接PostgreSQL数据库的方法
2016/11/28 Python
解决PyCharm的Python.exe已经停止工作的问题
2018/11/29 Python
Python学习笔记之函数的定义和作用域实例详解
2019/08/13 Python
解决pytorch-yolov3 train 报错的问题
2020/02/18 Python
实例讲解Python 迭代器与生成器
2020/07/08 Python
CSS3制作彩色进度条样式的代码示例分享
2016/06/23 HTML / CSS
HTML5输入框下拉菜单功能的示例代码
2020/09/08 HTML / CSS
魅力惠奢品线上平台:MEI.COM
2016/11/29 全球购物
Petmate品牌官方网站:宠物用品
2018/11/25 全球购物
十八届三中全会学习方案
2014/02/16 职场文书
小学班主任评语大全
2014/04/23 职场文书
植树节新闻稿
2015/07/17 职场文书
电视新闻稿
2015/07/17 职场文书
严以用权专题学习研讨会发言材料
2015/11/09 职场文书
教你用python实现一个无界面的小型图书管理系统
2021/05/21 Python
Shell脚本一键安装Nginx服务自定义Nginx版本
2022/03/20 Servers
nginx 配置缓存
2022/05/11 Servers