好的,以下是一个简单的抽奖游戏示例代码:
```python
import tkinter as tk
import random
class LotteryGame:
def __init__(self, master):
self.master = master
self.master.title("抽奖游戏")
self.master.geometry("300x200")
self.names = ["张三", "李四", "王五", "赵六", "钱七"]
self.current_name = tk.StringVar()
self.current_name.set("请点击开始按钮")
self.label = tk.Label(self.master, textvariable=self.current_name, font=("Arial", 20))
self.label.pack(pady=20)
self.start_button = tk.Button(self.master, text="开始", command=self.start_lottery)
self.start_button.pack(side=tk.LEFT, padx=10)
self.stop_button = tk.Button(self.master, text="停止", command=self.stop_lottery, state=tk.DISABLED)
self.stop_button.pack(side=tk.RIGHT, padx=10)
self.timer = None
def start_lottery(self):
self.start_button.config(state=tk.DISABLED)
self.stop_button.config(state=tk.NORMAL)
self.timer = self.master.after(50, self.update_label)
def stop_lottery(self):
if self.timer is not None:
self.master.after_cancel(self.timer)
self.timer = None
self.start_button.config(state=tk.NORMAL)
self.stop_button.config(state=tk.DISABLED)
def update_label(self):
name = random.choice(self.names)
self.current_name.set(name)
self.timer = self.master.after(50, self.update_label)
root = tk.Tk()
game = LotteryGame(root)
root.mainloop()
```
这个程序会创建一个窗口,并在窗口中添加一个标签、一个“开始”按钮和一个“停止”按钮。当用户点击“开始”按钮时,程序会开始滚动姓名,每隔 50 毫秒更新一次标签的文本内容。当用户点击“停止”按钮时,程序会停止滚动,并在标签中显示出最终的获奖者姓名。
这个程序使用了 tkinter 库来创建 GUI 界面,使用