From 8a1280c50c5b03e911e73d40e1a7067e7deb26c7 Mon Sep 17 00:00:00 2001 From: 13632530821 Date: Sat, 19 Nov 2022 19:59:03 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E5=85=A5=E8=B5=84=E6=BA=90=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=AD=98=E5=9C=A8=E6=80=A7=E6=B5=8B=E8=AF=95=20?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E8=AF=A2=E9=97=AE=E7=94=A8=E6=88=B7=E5=8A=A0?= =?UTF-8?q?=E8=BD=BD=E9=BB=98=E8=AE=A4=E8=AE=BE=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 点名器.pyw | 35 +++++++++++++++++++++++++++++------ 1 file changed, 29 insertions(+), 6 deletions(-) diff --git a/点名器.pyw b/点名器.pyw index 7902b4b..f89c7e3 100644 --- a/点名器.pyw +++ b/点名器.pyw @@ -7,8 +7,15 @@ import win32con, win32api import winsound import time +filename = "./data/names.xls" +configname = "./data/config.data" +selname = "./assets/sel.wav" +procname = "./assets/proc.wav" +iconname = "./assets/点名器.ico" gui_size = "620x200" +sound = True + gui = Tk() gui.withdraw() @@ -16,7 +23,26 @@ gui.title("点名器") gui.geometry(gui_size) gui.resizable(0,0) gui.configure(bg = "white") -gui.iconbitmap("./assets/点名器.ico") + +try: + file = open(iconname) + file.close() + gui.iconbitmap(iconname) +except IOError: + if not msgbox.askokcancel('资源文件错误', '在./assets目录下未能找到 点名器.ico 文件,点击「确定」将加载默认图标,点击「取消」以关闭程序'): + sys.exit() + +try: + file = open(selname) + file.close() + file = open(procname) + file.close() +except IOError: + if msgbox.askokcancel('资源文件错误', '在./assets目录下未能找到音频文件,点击「确定」将关闭声音,点击「取消」以关闭程序'): + sound = False + else: + sys.exit() + class Student(object): name = "" subject = "" @@ -32,10 +58,6 @@ class Student(object): protection_override = False up_percent = 30 down_persent = 40 -filename = "./data/names.xls" -configname = "./data/config.data" -selname = "./assets/sel.wav" -procname = "./assets/proc.wav" elim_rows = 1 percent_override = True @@ -180,7 +202,8 @@ def choose(): class_label.config(text = choice.class_name) subject_label.config(text = choice.subject) last_choice = choice.name - winsound.PlaySound(selname, winsound.SND_ASYNC | winsound.SND_FILENAME) + if sound: + winsound.PlaySound(selname, winsound.SND_ASYNC | winsound.SND_FILENAME) startrandom = Button(gui, text = "立刻摇人!", font = ("宋体", 17, "bold"), height = 2, fg = "red", command = choose, bg = "white")