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 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_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.layout_jglr.addWidget(self.jglr) #以上三行为初始化“讲义结构编号录入”tab self.layout_dtlr = QVBoxLayout(self.tab_dtlr) self.dtlr = MyWindow_dtlr() 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) #以上三行为初始化“LaTeX代码转换”tab self.layout_wbzh = QVBoxLayout(self.tab_wbzh) self.wbzh = MyWindow_wbzh() 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 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 ]: #在列表中的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: green; 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()