python写抽奖转盘_Python 选择转盘中某一个方框,来进行抽奖示例

这篇文章主要为大家详细介绍了Python 选择转盘中某一个方框,来进行抽奖示例,具有一定的参考价值,可以用来参考一下。

感兴趣Python 选择转盘中某一个方框,来进行抽奖示例的小伙伴,下面一起跟随512笔记的小编罗X来看看吧。

# *** 五一二笔记网 (www.512pic.com) ***

import tkinter

#导入线程模块

import threading

import time #导入代码的sleep 代码休眠

root = tkinter.Tk()

root.title('大转盘')

root.minsize(300,300)

#摆放按钮

btn1 = tkinter.Button(root,text = '樱桃',bg = 'red')

btn1.place(x = 20,y = 20,width = 50,height = 50)

btn2 = tkinter.Button(root,text = '香蕉',bg = 'white')

btn2.place(x = 90,y = 20,width = 50,height = 50)

btn3 = tkinter.Button(root,text = '苹果',bg = 'white')

btn3.place(x = 160,y = 20,width = 50,height = 50)

btn4 = tkinter.Button(root,text = '西瓜',bg = 'white')

btn4.place(x = 230,y = 20,width = 50,height = 50)

btn5 = tkinter.Button(root,text = '鸭梨',bg = 'white')

btn5.place(x = 230,y = 90,width = 50,height = 50)

btn6 = tkinter.Button(root,text = '榴莲',bg = 'white')

btn6.place(x = 230,y = 160,width = 50,height = 50)

btn7 = tkinter.Button(root,text = '柚子',bg = 'white')

btn7.place(x = 230,y = 230,width = 50,height = 50)

btn8 = tkinter.Button(root,text = '葡萄',bg = 'white')

btn8.place(x = 160,y = 230,width = 50,height = 50)

btn9 = tkinter.Button(root,text = '草莓',bg = 'white')

btn9.place(x = 90,y = 230,width = 50,height = 50)

btn10 = tkinter.Button(root,text = '芒果',bg = 'white')

btn10.place(x = 20,y = 230,width = 50,height = 50)

btn11 = tkinter.Button(root,text = '荔枝',bg = 'white')

btn11.place(x = 20,y = 160,width = 50,height = 50)

btn12 = tkinter.Button(root,text = '甘蔗',bg = 'white')

btn12.place(x = 20,y = 90,width = 50,height = 50)

#将所有选项组成列表

fruitlists = [btn1,btn2,btn3,btn4,btn5,btn6,btn7,btn8,btn9,btn10,btn11,btn12]

#是否开启循环的标志

isloop = False

#是否停止标志

stopsign=False #是否接收到 stop信号

#存储停止id------用于进行stop后的重新启动

stopid=None

def round():

global isloop

global stopid

#判断是否开始循环

if isloop == True:

return

i=1

if isinstance(stopid,int):

i=stopid

while True:

#延时操作

time.sleep(0.2)

#将所有的组件背景变为白色

for x in fruitlists:

x['bg'] = 'white'

#将当前数值对应的组件变色

fruitlists[i]['bg'] = 'red'

#变量+1

i += 1

print('当前i为',i) #当前i,用来追踪当前位置

#如果i大于最大索引直接归零

if i >= len(fruitlists):

i = 0

if stopsign == True:#当停止标志 为真时

isloop=False

stopid =i#赋值stopid

break

def stop1():

global stopsign

if stopsign ==True:#当多接收stop1()函数时 ,直接跳过

return

stopsign=True

#建立一个新线程的函数

def newtask():

global isloop

global stopsign

#建立线程

stopsign=False

#print(stopsign) #打印 点击开始时的stopsign

t = threading.Thread(target = round)

#开启线程运行

t.start()

# 设置循环开始标志

isloop = True

#开始按钮

btn_start = tkinter.Button(root,text = 'start',command = newtask)

btn_start.place(x = 90,y = 125,width = 50,height = 50)

#停止按钮

btn_stop = tkinter.Button(root,text = 'stop',command=stop1)

btn_stop.place(x = 160,y = 125,width = 50,height = 50)

root.mainloop()

# *** 五一二笔记网 (www.512pic.com) ***

注:关于Python 选择转盘中某一个方框,来进行抽奖示例的内容就先介绍到这里,更多相关文章的可以留意512笔记的其他信息。

关键词:抽奖

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值