之前我们已经做好了工具的UI界面,下面开始我们要为UI编写逻辑层。
pyqt5的特点是,功能的触发都是依靠信号和槽函数绑定的。用户事件发出信号,触发槽函数。从而去执行。
先是初始化函数,我们的UI_MainWindow类继承自之前我们编写的UI类,在__init__里调用UI类的初始化函数initUI.然后把一些以后会频繁应用到的变量在这里进行申明,因为打开的时候就要取到excel文件的列表和单独文件里的sheet列表,所以在这里执行了self.assign_excel_combobox()和self.assign_sheet_list()2个函数,获取这2个控件内的内容.connect()内是信号和槽的对应关系.
# encoding: utf-8
import sys
from Ui.Ui_MainWindow import UiMainWindow
from PyQt5.QtWidgets import QApplication, QMainWindow, QTableWidgetItem
from Utils.Logger import log
from Utils.EditExcel import ExcelReader
from Utils.GetFuncName import get_func_name
from Utils.ScriptExecute import Worker
from Config.VarConfig import *
"""
处理信号和信号槽函数
"""
class MyWindow(QMainWindow, UiMainWindow):
def __init__(self):
super(MyWindow, self).__init__()
self.initUI(self) # 调用父类的初始化
# 一些以后会频繁用到的变量
self.currentsheetname = None
self.test