python 转盘 圆形,用python实现一个转盘
用python实现一个转盘
发布时间:2019-09-22 08:09:12编辑:auto阅读(624)
#抽奖 面向对象版本
import tkinter
import time
import threading
class choujiang:
#初始化魔术方法
def __init__(self):
#准备好界面
self.root = tkinter.Tk()
self.root.title('lowB版转盘')
self.root.minsize(300, 300)
# 声明一个是否按下开始的变量
self.isloop = False
self.newloop = False
#调用设置界面的方法
self.setwindow()
self.root.mainloop()
#界面布局方法
def setwindow(self):
#开始停止按钮
self.btn_start = tkinter.Button(self.root, text = 'start/stop',command = self.newtask)
self.btn_start.place(x=90, y=125, width=50, height=50)
self.btn1 = tkinter.Button(self.root, text='赵', bg='red')
self.btn1.place(x=20, y=20, width=50, height=50)
self.btn2 = tkinter.Button(self.root, text='钱', bg='white')
self.btn2.place(x=90, y=20, width=50, height=50)
self.btn3 = tkinter.Button(self.root, text='孙', bg='white')
self.btn3.place(x=160, y=20, width=50, height=50)
self.btn4 = tkinter.Button(self.root, text='李', bg='white')
self.btn4.place(x=230, y=20, width=50, height=50)
self.btn5 = tkinter.Button(self.root, text='周', bg='white')
self.btn5.place(x=230, y=90, width=50, height=50)
self.btn6 = tkinter.Button(self.root, text='吴', bg='white')
self.btn6.place(x=230, y=160, width=50, height=50)
self.btn7 = tkinter.Button(self.root, text='郑', bg='white')
self.btn7.place(x=230, y=230, width=50, height=50)
self.btn8 = tkinter.Button(self.root, text='王', bg='white')
self.btn8.place(x=160, y=230, width=50, height=50)
self.btn9 = tkinter.Button(self.root, text='冯', bg='white')
self.btn9.place(x=90, y=230, width=50, height=50)
self.btn10 = tkinter.Button(self.root, text='陈', bg='white')
self.btn10.place(x=20, y=230, width=50, height=50)
self.btn11 = tkinter.Button(self.root, text='褚', bg='white')
self.btn11.place(x=20, y=160, width=50, height=50)
self.btn12 = tkinter.Button(self.root, text='卫', bg='white')
self.btn12.place(x=20, y=90, width=50, height=50)
# 将所有选项组成列表
self.girlfrends = [self.btn1,self.btn2,self.btn3,self.btn4,self.btn5,self.btn6,self.btn7,self.btn8,self.btn9,self.btn10,self.btn11,self.btn12]
def rounds(self):
# 判断是否开始循环
if self.isloop == True:
return
# 初始化计数 变量
i = 0
# 死循环
while True:
if self.newloop == True:
self.newloop = False
return
# 延时操作
time.sleep(0.1)
# 将所有的组件背景变为白色
for x in self.girlfrends:
x['bg'] = 'white'
# 将当前数值对应的组件变色
self.girlfrends[i]['bg'] = 'red'
# 变量+1
i += 1
# 如果i大于最大索引直接归零
if i >= len(self.girlfrends):
i = 0
# 建立一个新线程的函数
def newtask(self):
if self.isloop == False:
# 建立线程
t = threading.Thread(target = self.rounds)
# 开启线程运行
t.start()
# 设置循环开始标志
self.isloop = True
elif self.isloop == True:
self.isloop = False
self.newloop = True
c = choujiang()
关键字:
python 转盘 圆形,用python实现一个转盘相关推荐
- python画圆形螺旋线-Python使用matplotlib绘制三维图形示例
本文实例讲述了Python使用matplotlib绘制三维图形.分享给大家供大家参考,具体如下: 用二维泡泡图表示三维数据 泡泡的坐标2维,泡泡的大小三维,使用到的函数 plt.scatter(P[: ...
- python画圆形螺旋线-Python turtle 绘制彩色螺旋线
小朋友总会别各种五颜六色的色彩所吸引,就拿小编的小侄子来说,自己很喜欢美术课,看到五颜六色的颜色都想尝试着图一下,但结果总是不仅人意,今天南京小码王Python培训机构,就为大家介绍一下Python ...
- Android撸一个转盘抽奖
Android撸一个转盘抽奖 前言 最近在学习的时候想做个积分转盘抽奖的功能,以前项目中使用过,但是是用的H5写的,但是我现在还不是太会写网页,就想算了,用Android写个吧!因为我这边的业务逻辑是 ...
- python 获取集合里面的某一个元素
python 获取集合里面的某一个元素,想想呢集合是不支持所以,切片,相加,相乘操作的, 所以想获取集合里面的某一个元素需要转化下思路,比如把即可转成列表然后在利用索引获取 例如: list_a = ...
- python一个月能掌握吗_零基础python入门分析,如何做到一个月学会(深思极恐)...
在数据分析领域,python是一个绕不开的知识和工具,如果不会用python就很难说自己会数据分析,但是最近很多想要入门数据分析的小白经常问我,Python怎么入门?Python虽然被称作是" ...
- 这次拿下Python全靠它了!一个交互式的学习资源!
你的假期余额已不足!在假期的最后一天,我们给大家介绍一本非常 nice 的 Python 学习书--Project Python. Project Python是一本免费的交互式书籍,它通过使用图形. ...
- Python 从入门到精通:一个月就够了?真的能行嘛?
毫无疑问,Python 是当下最火的编程语言之一.对于许多未曾涉足计算机编程的领域「小白」来说,深入地掌握 Python 看似是一件十分困难的事.其实,只要掌握了科学的学习方法并制定了合理的学习计划, ...
- c语言多线程转python多线程,真正的python 多线程!一个修饰符让你的多线程和C语言一样快...
> Python 多线程因为GIL的存在,导致其速度比单线程还要慢.但是近期我发现了一个相当好用的库,这个库只需要增加一个修饰符就可以使原生的python多线程实现真正意义上的并发.本文将和大家 ...
- python合并多个excel为一个_Python合并多个Excel数据
安装模块 1.找到对应的模块 2.用pip install 安装 pip install xlrd pip install XlsxWriter pip list查看 XlsxWriter示例 1 i ...
- python手机版做小游戏代码大全-Python大牛手把手教你做一个小游戏,萌新福利!...
原标题:Python大牛手把手教你做一个小游戏,萌新福利! 引言 最近python语言大火,除了在科学计算领域python有用武之地之外,在游戏.后台等方面,python也大放异彩,本篇博文将按照正规 ...
最新文章
- 洛谷P4768 [NOI2018]归程(Kruskal重构树)
- Jetty9.2.2集群Session共享
- CCF NOI plus 201(7)6 初赛题 解题报告
- Matlab调制库函数fskmod参数及源代码详解
- 2018web前端面试题总结
- Tensorflow Serving Docker compose 部署服务细节(Ubuntu)
- LeetCode(235)——二叉搜索树的最近公共祖先(JavaScript)
- idea运行android usb调试,IntelliJ IDEA
- 标准工时分析软件VIOOVI,适配现代化工业的人工智能软件
- win的反义词_小学英语常见的120对反义词大全,聪明的小升初家长快来收藏学习...
- Linux查看当前时间
- 什么是生物质发电?生物质发电有哪些方法?
- 个人计算机中的防病毒软件无法,为什么无法在计算机上安装360防病毒软件?
- cad断点快捷键_CAD打断和打断于点怎么使用?CAD打断快捷键命令及操作方法
- 【BOOST C++容器专题03】【05】Boost.CircularBuffer
- 《第一行代码》阅读记录—Git和Notification
- 如何建立免费企业邮箱(腾讯、网易)
- 开关电源32个检测项目、检测方法与检测设备(上)
- discuz x3.5
- 自己做的c语言笔记大部分来自runoob,不是原创只是记录
热门文章
- AtCoder Beginner Contest 236 题解
- Rayson API 框架分析系列之4:RPC调度原理
- 企业网站建设如何选择企业cms系统
- 家庭服务器搭建,NAS存储
- 猿创征文|Python学习工具千千万,我心中的TOP10
- git报错:Reinitialized existing Git repository in ...解决方法
- gRPC服务发现负载均衡
- IT公司内推 互联网内推 bat内推
- cache 提高计算机运行速度,使用cache可以提高计算机的运行速度,是什么原因?...
- 准确率(accuracy)、精确率(Precision)、召回率(Recall)