简易抽奖器源码以及打包操作
import wx import random import time# 定义Myframe类,继承Frame class Myframe(wx.Frame):# 奖品rewards = ['桥本香奈', '二代CC', 'NaNa', '情深叉']# 构造方法def __init__(self):# 父类初始化super().__init__(None, title='主界面', size=(500, 400), pos=(500, 200))# 创建面板,记得参数self(类对象)# 设置背景颜色self.SetBackgroundColour((242,156,177))pl = wx.Panel(self, size=(500, 400))# 创建静态文本self.static_text = wx.StaticText(pl, label='欢迎进入的梦中玉门世界', pos=(160, 160),style=wx.TE_CENTER)# 字体设置# 字体大小,字体样式(family),字体风格(style),加粗(weight)self.static_text.SetFont(wx.Font(15,wx.FONTFAMILY_MODERN,wx.FONTSTYLE_SLANT,wx.FONTWEIGHT_BOLD))# 创建按钮,创建在面板上self.button1 = wx.Button(pl, label='选择玉门', pos=(150, 190))self.button2 = wx.Button(pl, label='确认玉门', pos=(250, 190))# 绑定事件self.Bind(wx.EVT_BUTTON, self.Start_onClick, self.button1)self.Bind(wx.EVT_BUTTON, self.End_onClick, self.button2)# 创建开始按钮事件def Start_onClick(self, event):# self.static_text.SetLabelText(random.choice(self.rewards))# 创建一个定时器事件self.timer = wx.Timer(self)self.timer.Start(200) # 每隔1000毫秒更新名字self.Bind(wx.EVT_TIMER, self.up_data_name, self.timer)# 创建名单更新事件def up_data_name(self, event):self.reward = random.choice(self.rewards)# 设置label内容,进行label内容替换self.static_text.SetLabelText(self.reward)print(self.reward)# 创建结束按钮事件def End_onClick(self, event):self.timer.Stop()# 设置label内容,进行label内容替换self.static_text.SetLabelText(f'恭喜你!你的幸运玉门是{self.reward}')if __name__ == '__main__':# 创建应用程序对象app = wx.App()# 创建对象frm = Myframe()# 窗口显示frm.Show()# 窗口一直显示app.MainLoop()
可以安装pyinstaller包进行打包
安装完成后在pycharn终端输入
pyinstaller -F -w 文件路径
回车,在回显中找到打包后的exe文件,找到后就可以发送到别人PC端进行使用了