from PySide6.QtWidgets import QWidget, QApplication, QFileDialog, QMainWindow, QVBoxLayout from Ui_tool_panel import Ui_MainWindow from PySide6.QtCore import Signal from 寻找空闲题号 import MyWindow_kxth from 生成直方图代码 import MyWindow_hist from 文本转换处理 import MyWindow_wbzh from 系列讲义生成 import MyWindow_jysc from 讲义结构与内容录入 import MyWindow_jglr from 答题纸对应 import MyWindow_dtlr from 获取题号 import MyWindow_hqth from 单一题号转为图片 import MyWindow_sctp from 指定题号编译pdf import MyWindow_xtby from 根据正确率选择题号 import MyWindow_ndsx from 关键字筛选题号 import MyWindow_sxth from 添加关联题目 import MyWindow_tjgl from 批量收录新题 import MyWindow_bdsl from 下载小闲答题数据 import MyWindow_xxxz from 新增基础知识梳理 import MyWindow_tjjc from 共享使用记录 import MyWindow_gxsy from 文件或文本框提取答案 import MyWindow_tqda from 单元挂钩 import MyWindow_dygg from 统考数据导入 import MyWindow_tkdr from 手动统计结果导入 import MyWindow_sddr from 获取小闲平台使用数据 import MyWindow_xxdr from 题目内容直接编辑 import MyWindow_bjtm from 修改metadata import MyWindow_tjzd from 基础知识编辑 import MyWindow_bjjc from 修改目标内容 import MyWindow_xgmb from 删除使用记录 import MyWindow_scjl from 删除课时目标关系 import MyWindow_scgx from 新增目标关系 import MyWindow_xzgx from 试卷列表 import MyWindow_sjlb from 赋能卷生成 import MyWindow_fnsc from 排序材料内难度 import MyWindow_pxnd from 单人讲义生成 import MyWindow_drsc from 讲义与答题纸信息查询 import MyWindow_jycx from 个人使用记录导入 import MyWindow_grdr from database_tools_2 import * class MyWindow(QMainWindow,Ui_MainWindow): sendDBname = Signal(str) #定义一个字符串型信号 def __init__(self): super().__init__() self.setupUi(self) self.bind() def bind(self): self.SelectTIKUTEST() self.database = "tikutest" self.pushButton_tiku.clicked.connect(self.SelectTIKU) self.pushButton_tikutest.clicked.connect(self.SelectTIKUTEST) #以上为设置当前数据库的两个按钮 self.layout_kxth = QVBoxLayout(self.tab_kxth) self.kxth = MyWindow_kxth(self.database) self.layout_kxth.addWidget(self.kxth) #以上三行为初始化“空闲题号”tab self.layout_bdsl = QVBoxLayout(self.tab_bdsl) self.bdsl = MyWindow_bdsl(self.database) self.layout_bdsl.addWidget(self.bdsl) #以上三行为初始化“新题录入”tab self.layout_tjgl = QVBoxLayout(self.tab_tjgl) self.tjgl = MyWindow_tjgl(self.database) self.layout_tjgl.addWidget(self.tjgl) #以上三行为初始化“添加关联”tab self.layout_tjzd = QVBoxLayout(self.tab_tjzd) self.tjzd = MyWindow_tjzd(self.database) self.layout_tjzd.addWidget(self.tjzd) #以上三行为初始化“编辑题目”tab self.layout_bjtm = QVBoxLayout(self.tab_bjtm) self.bjtm = MyWindow_bjtm(self.database) self.layout_bjtm.addWidget(self.bjtm) #以上三行为初始化“编辑题目”tab self.layout_xxdr = QVBoxLayout(self.tab_xxdr) self.xxdr = MyWindow_xxdr(self.database) self.layout_xxdr.addWidget(self.xxdr) #以上三行为初始化“小闲统计数据导入”tab self.layout_sddr = QVBoxLayout(self.tab_sddr) self.sddr = MyWindow_sddr() self.layout_sddr.addWidget(self.sddr) #以上三行为初始化“手动统计数据导入”tab self.layout_tkdr = QVBoxLayout(self.tab_tkdr) self.tkdr = MyWindow_tkdr() self.layout_tkdr.addWidget(self.tkdr) #以上三行为初始化“统考数据导入”tab self.layout_dygg = QVBoxLayout(self.tab_dygg) self.dygg = MyWindow_dygg(self.database) self.layout_dygg.addWidget(self.dygg) #以上三行为初始化“单元挂钩”tab self.layout_tqda = QVBoxLayout(self.tab_tqda) self.tqda = MyWindow_tqda() self.layout_tqda.addWidget(self.tqda) #以上三行为初始化“提取答案”tab self.layout_gxsy = QVBoxLayout(self.tab_gxsy) self.gxsy = MyWindow_gxsy(self.database) self.layout_gxsy.addWidget(self.gxsy) #以上三行为初始化“共享使用数据”tab self.layout_tjjc = QVBoxLayout(self.tab_tjjc) self.tjjc = MyWindow_tjjc(self.database) self.layout_tjjc.addWidget(self.tjjc) #以上三行为初始化“新增基础知识梳理”tab self.layout_xxxz = QVBoxLayout(self.tab_xxxz) self.xxxz = MyWindow_xxxz() self.layout_xxxz.addWidget(self.xxxz) #以上三行为初始化“小闲下载”tab self.layout_sxth = QVBoxLayout(self.tab_sxth) self.sxth = MyWindow_sxth(self.database) self.layout_sxth.addWidget(self.sxth) #以上三行为初始化“关键字筛选”tab self.layout_ndsx = QVBoxLayout(self.tab_ndsx) self.ndsx = MyWindow_ndsx(self.database) self.layout_ndsx.addWidget(self.ndsx) #以上三行为初始化“按难度筛选”tab self.layout_xtby = QVBoxLayout(self.tab_xtby) self.xtby = MyWindow_xtby(self.database) self.layout_xtby.addWidget(self.xtby) #以上三行为初始化“选题编译”tab self.layout_sctp = QVBoxLayout(self.tab_sctp) self.sctp = MyWindow_sctp(self.database) self.layout_sctp.addWidget(self.sctp) #以上三行为初始化“生成图片”tab self.layout_hqth = QVBoxLayout(self.tab_hqth) self.hqth = MyWindow_hqth() self.layout_hqth.addWidget(self.hqth) #以上三行为初始化“获取题号”tab self.layout_jglr = QVBoxLayout(self.tab_jglr) self.jglr = MyWindow_jglr(self.database) self.layout_jglr.addWidget(self.jglr) #以上三行为初始化“讲义结构编号录入”tab self.layout_dtlr = QVBoxLayout(self.tab_dtlr) self.dtlr = MyWindow_dtlr(self.database) self.layout_dtlr.addWidget(self.dtlr) #以上三行为初始化“答题纸对应信息录入”tab self.layout_jysc = QVBoxLayout(self.tab_jysc) self.jysc = MyWindow_jysc(self.database) self.layout_jysc.addWidget(self.jysc) #以上三行为初始化“讲义生成”tab self.layout_wbzh = QVBoxLayout(self.tab_wbzh) self.wbzh = MyWindow_wbzh(self.database) self.layout_wbzh.addWidget(self.wbzh) #以上三行为初始化“LaTeX代码转换”tab self.layout_hist = QVBoxLayout(self.tab_hist) self.hist = MyWindow_hist() self.layout_hist.addWidget(self.hist) #以上三行为初始化“生成直方图代码”tab self.layout_bjjc = QVBoxLayout(self.tab_bjjc) self.bjjc = MyWindow_bjjc(self.database) self.layout_bjjc.addWidget(self.bjjc) #以上三行为初始化“编辑知识梳理”tab self.layout_xgmb = QVBoxLayout(self.tab_xgmb) self.xgmb = MyWindow_xgmb(self.database) self.layout_xgmb.addWidget(self.xgmb) #以上三行为初始化"修改目标文本"tab self.layout_scjl = QVBoxLayout(self.tab_scjl) self.scjl = MyWindow_scjl(self.database) self.layout_scjl.addWidget(self.scjl) #以上三行为初始化"删除使用记录"tab self.layout_scgx = QVBoxLayout(self.tab_scgx) self.scgx = MyWindow_scgx(self.database) self.layout_scgx.addWidget(self.scgx) #以上三行为初始化"删除课时目标关系"tab self.layout_xzgx = QVBoxLayout(self.tab_xzgx) self.xzgx = MyWindow_xzgx(self.database) self.layout_xzgx.addWidget(self.xzgx) #以上三行为初始化"新增课时目标关系"tab self.layout_sjlb = QVBoxLayout(self.tab_sjlb) self.sjlb = MyWindow_sjlb(self.database) self.layout_sjlb.addWidget(self.sjlb) #以上三行为初始化"试卷列表"tab self.layout_fnsc = QVBoxLayout(self.tab_fnsc) self.fnsc = MyWindow_fnsc(self.database) self.layout_fnsc.addWidget(self.fnsc) #以上三行为初始化"赋能卷生成"tab self.layout_pxnd = QVBoxLayout(self.tab_pxnd) self.pxnd = MyWindow_pxnd(self.database) self.layout_pxnd.addWidget(self.pxnd) #以上三行为初始化"难度排序"tab self.layout_drsc = QVBoxLayout(self.tab_drsc) self.drsc = MyWindow_drsc(self.database) self.layout_drsc.addWidget(self.drsc) #以上三行为初始化"单人讲义生成"tab self.layout_jycx = QVBoxLayout(self.tab_jycx) self.jycx = MyWindow_jycx(self.database) self.layout_jycx.addWidget(self.jycx) #以上三行为初始化"讲义答题纸查询"tab self.layout_grdr = QVBoxLayout(self.tab_grdr) self.grdr = MyWindow_grdr(self.database) self.layout_grdr.addWidget(self.grdr) #以上三行为初始化"讲义答题纸查询"tab for func in [ self.kxth.setdbname, self.jysc.setdbname, self.sctp.setdbname, self.xtby.setdbname, self.ndsx.setdbname, self.sxth.setdbname, self.tjgl.setdbname, self.bdsl.setdbname, self.tjjc.setdbname, self.gxsy.setdbname, self.dygg.setdbname, self.bjtm.setdbname, self.tjzd.setdbname, self.bjjc.setdbname, self.wbzh.setdbname, self.xgmb.setdbname, self.scjl.setdbname, self.scgx.setdbname, self.xzgx.setdbname, self.sjlb.setdbname, self.fnsc.setdbname, self.pxnd.setdbname, self.xxdr.setdbname, self.jglr.setdbname, self.dtlr.setdbname, self.drsc.setdbname, self.jycx.setdbname, self.grdr.setdbname ]: #在列表中的tab里传送数据库名的连接 self.sendDBname.connect(func) def sendValue(self): self.sendDBname.emit(self.database) #释放信号 def SelectTIKU(self): self.pushButton_tiku.setStyleSheet("background-color: green; font-weight: bold;") #绿色背景粗体 self.pushButton_tikutest.setStyleSheet("") #恢复原有背景, 取消粗体 # SaveTextFile("tiku","临时文件/databasename.txt") self.database = "tiku" self.sendValue() def SelectTIKUTEST(self): self.pushButton_tikutest.setStyleSheet("background-color: yellow; font-weight: bold;") #绿色背景粗体 self.pushButton_tiku.setStyleSheet("") #恢复原有背景, 取消粗体 # SaveTextFile("tikutest","临时文件/databasename.txt") self.database = "tikutest" self.sendValue() if __name__ == '__main__': app = QApplication([]) windows = MyWindow() windows.show() app.exec()