This repository has been archived on 2024-06-23. You can view files and clone it, but cannot push or open issues or pull requests.
mathdeptv2/工具v4/tool_panel.py

107 lines
4.2 KiB
Python

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 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_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_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,
self.ndsx.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()