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 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_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_kxth = QVBoxLayout(self.tab_kxth) self.kxth = MyWindow_kxth(self.database) self.layout_kxth.addWidget(self.kxth) #以上三行为初始化“空闲题号”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 ]: #在列表中的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()