说明
1、Tkinter模块是Python标准TkGUI工具包的接口。
2、Tk和Tkinter可用于大多数Unix平台,也可用于Windows和Macintosh系统。
Tk8.0后续版本可以实现本地窗口风格,在绝大多数平台上运行良好。
实例
importtkinter importtime importthreading fromrandomimportrandom fromtkinterimportmessageboxastkMessageBox classchoujiang: #魔法方法的初始化 def__init__(self): #准备好界面 self.root=tkinter.Tk() self.root.title('lowb版转盘#39;) self.root.minsize(300,300) #声明是否按下开始变量 self.isloop=False self.newloop=False self.value=[] #调用设置界面的方法 self.setwindow() self.root.mainloop() #界面布局方法 defsetwindow(self): #停止按钮 self.btn_start=tkinter.Button(self.root,text='start/stop',command=self.newtask) self.btn_start.place(x=125,y=125,width=70,height=70) self.btn1=tkinter.Button(self.root,text='1',bg='red') self.btn1.place(x=20,y=20,width=50,height=50) self.btn2=tkinter.Button(self.root,text='2',bg='white') self.btn2.place(x=90,y=20,width=50,height=50) self.btn3=tkinter.Button(self.root,text='3',bg='white') self.btn3.place(x=160,y=20,width=50,height=50) self.btn4=tkinter.Button(self.root,text='3',bg='white') self.btn4.place(x=230,y=20,width=50,height=50) self.btn5=tkinter.Button(self.root,text='3',bg='white') self.btn5.place(x=230,y=90,width=50,height=50) self.btn6=tkinter.Button(self.root,text='2',bg='white') self.btn6.place(x=230,y=160,width=50,height=50) self.btn7=tkinter.Button(self.root,text='1',bg='white') self.btn7.place(x=230,y=230,width=50,height=50) self.btn8=tkinter.Button(self.root,text='3',bg='white') self.btn8.place(x=160,y=230,width=50,height=50) self.btn9=tkinter.Button(self.root,text='2',bg='white') self.btn9.place(x=90,y=230,width=50,height=50) self.btn10=tkinter.Button(self.root,text='3',bg='white') self.btn10.place(x=20,y=230,width=50,height=50) self.btn11=tkinter.Button(self.root,text='1',bg='white') self.btn11.place(x=20,y=160,width=50,height=50) self.btn12=tkinter.Button(self.root,text='3',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] defrounds(self): #判断循环是否开始 ifself.isloop==True: return #初始化计数变量 i=0 #死循环 whileTrue: ifself.newloop==True: self.newloop=False self.value=self.girlfrends[i-1]['text'] ifself.value=='1': tkMessageBox.showinfo("WinningResult","恭喜获得一等奖!'") ifself.value=='2': tkMessageBox.showinfo("WinningResult","恭喜获得二等奖!") ifself.value=='3': tkMessageBox.showinfo("WinningResult",'恭喜获得三等奖!') return #延时操作 time.sleep(0.1) #将所有组件背景变成白色 forxinself.girlfrends: x['bg']='white' #将当前值对应的组件变色 self.girlfrends[i]['bg']='red' #变量+1 i+=1 #如果i大于索引,则直接归零 ifi>=len(self.girlfrends): i=0 #建立新线程的函数 defnewtask(self): ifself.isloop==False: #建立线程 t=threading.Thread(target=self.rounds) #打开线程运行 t.start() #设置循环开始标志 self.isloop=True elifself.isloop==True: self.isloop=False self.newloop=True #转盘效果 c=choujiang()
以上是python 介绍Tkinter模块,希望对大家有所帮助。更多Python学习指导:python基础教程
本文教程操作环境:windows7系统Python 3.9.1,DELL G3电脑。