from tkinter import * from subprocess import call import os root = Tk() root.geometry('400x600') root.title('题库v2.0工具面板') def temp(): pass def SetButton(str,numbuttons,openfilelist): commandname.set(str) LabelTool.config(text = str) button1.place(x = 10, y = 10) button1.configure(bg = "green") if numbuttons == 1: button2.place_forget() else: button2.place(x=10, y=50) button2.configure(bg = "red") for f in openfilelist: os.system("code "+f) # 按钮STEP1执行的命令 def run_command1(): selectedtool = commandname.get() if selectedtool == "题号选题pdf生成": call(["python","题号选题pdf生成.py"]) elif selectedtool == "寻找空闲题号": call(["python","寻找空闲题号.py"]) elif selectedtool == "批量收录题目": call(["python","批量收录题目.py"]) elif selectedtool == "添加关联题目": call(["python","添加关联题目.py"]) button2.configure(bg = "green") elif selectedtool == "修改题目数据库": call(["python","修改题目数据库.py"]) button2.configure(bg = "green") elif selectedtool == "mathpix预处理": call(["python","../文本处理工具/剪贴板文本整理_mathpix.py"]) elif selectedtool == "带圈数字处理": call(["python","../文本处理工具/带圈数字处理.py"]) elif selectedtool == "试卷答案生成": call(["python","试卷答案生成.py"]) elif selectedtool == "单元标记转换": call(["python","单元标记转换.py"]) elif selectedtool == "目标清点": call(["python","单元课时目标题目数据清点.py"]) elif selectedtool == "目标表体生成": call(["python","根据范围提取课时目标.py"]) elif selectedtool == "课时目标寻找题目": call(["python","课时目标寻找题目.py"]) elif selectedtool == "关键字筛选题号": call(["python","关键字筛选题号.py"]) elif selectedtool == "讲义生成": call(["python","讲义生成.py"]) elif selectedtool == "课时目标划分信息汇总": call(["python","课时目标划分信息汇总.py"]) elif selectedtool == "题号清单生成": call(["python","题号清单生成.py"]) elif selectedtool == "已用题号剔除": call(["python","已用题号剔除.py"]) elif selectedtool == "寻找未赋答案题目": call(["python","寻找未赋答案题目.py"]) LabelTool.config(text = selectedtool+"STEP1命令执行完毕") button1.place_forget() # 按钮STEP2执行的命令 def run_command2(): selectedtool = commandname.get() if selectedtool == "添加关联题目": call(["python","导入关联题目.py"]) elif selectedtool == "修改题目数据库": call(["python","修改结果汇入.py"]) LabelTool.config(text = selectedtool+ "STEP2命令执行完毕") button2.place_forget() commandname = StringVar() commandname.set("none") LabelTool = Label(root, text = "请在菜单栏选择工具", height = 1, width = 40, anchor=W) LabelTool.place(x=10,y=100) button1 = Button(root, text = "运行STEP1", command = run_command1) button2 = Button(root, text = "运行STEP2", command = run_command2) # button3 = Button(root, text = "运行STEP3") menubar = Menu(root) # 设置 录入 菜单项 ImportMenu = Menu(menubar, tearoff = False) menubar.add_cascade(label = "录入", menu = ImportMenu) ImportMenu.add_command(label = "寻找空闲题号", command = lambda: SetButton("寻找空闲题号",1,[])) ImportMenu.add_separator() ImportMenu.add_command(label = "批量收录题目", command = lambda: SetButton("批量收录题目",1,["批量收录题目.py"])) ImportMenu.add_command(label = "添加关联题目", command = lambda: SetButton("添加关联题目",2,["添加关联题目.py"])) # 设置 维护 菜单项 MaintainenceMenu = Menu(menubar, tearoff = False) menubar.add_cascade(label = "维护", menu = MaintainenceMenu) MaintainenceMenu.add_command(label = "修改题目", command = lambda: SetButton("修改题目数据库",2,["修改题目数据库.py"])) # 设置 使用 菜单项 UseMenu = Menu(menubar, tearoff = False) menubar.add_cascade(label = "题库使用", menu = UseMenu) UseMenu.add_command(label = "关键字筛选题号", command = lambda: SetButton("关键字筛选题号",1,["关键字筛选题号.py"])) UseMenu.add_separator() UseMenu.add_command(label = "讲义试卷生成", command = lambda: SetButton("讲义生成",1,["讲义生成.py"])) UseMenu.add_command(label = "题号选题pdf生成", command = lambda: SetButton("题号选题pdf生成",1,["题号选题pdf生成.py"])) # 设置 目标及标签 菜单项 ObjTagMenu = Menu(menubar, tearoff = False) menubar.add_cascade(label = "目标及标签", menu = ObjTagMenu) ObjTagMenu.add_command(label = "单元标记转换", command = lambda: SetButton("单元标记转换",1,["单元标记转换.py"])) ObjTagMenu.add_separator() ObjTagMenu.add_command(label = "目标清点", command = lambda: SetButton("目标清点",1,[])) ObjTagMenu.add_command(label = "目标表体生成", command = lambda: SetButton("目标表体生成",1,["根据范围提取课时目标.py"])) ObjTagMenu.add_command(label = "课时目标寻找题目", command = lambda: SetButton("课时目标寻找题目",1,["课时目标寻找题目.py"])) ObjTagMenu.add_command(label = "课时目标划分信息汇总", command = lambda: SetButton("课时目标划分信息汇总",1,[])) # 设置 备课组 菜单项 BKZMenu = Menu(menubar, tearoff=False) menubar.add_cascade(label = "备课组材料相关", menu = BKZMenu) BKZMenu.add_command(label = "试卷答案生成", command = lambda: SetButton("试卷答案生成",1,["试卷答案生成.py"])) BKZMenu.add_command(label = "题号清单生成", command = lambda: SetButton("题号清单生成",1,["题号清单生成.py"])) BKZMenu.add_command(label = "已用题号剔除", command = lambda: SetButton("已用题号剔除",1,["已用题号剔除.py"])) BKZMenu.add_command(label = "寻找未赋答案题目", command = lambda: SetButton("寻找未赋答案题目",1,["寻找未赋答案题目.py"])) # 设置 其他 菜单项 OtherMenu = Menu(menubar, tearoff = False) menubar.add_cascade(label = "其他", menu = OtherMenu) OtherMenu.add_command(label = "mathpix预处理", command = lambda: SetButton("mathpix预处理",1,[])) OtherMenu.add_command(label = "带圈数字处理", command = lambda: SetButton("带圈数字处理",1,[])) menubar.add_command(label = "退出", command = root.destroy) root.config(menu = menubar) root.mainloop()