# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'UI.ui' # # Created by: PyQt5 UI code generator 5.15.2 # # WARNING: Any manual changes made to this file will be lost when pyuic5 is # run again. Do not edit this file unless you know what you are doing. from PyQt5 import QtCore, QtGui, QtWidgets from PyQt5.QtWidgets import QFileDialog from btn import bianyi_btn from global_var import * class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(960, 720) font = QtGui.QFont() font.setFamily("JetBrains Mono, 微软雅黑") font.setPointSize(10) MainWindow.setFont(font) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.centralwidget) self.verticalLayout_3.setObjectName("verticalLayout_3") self.horizontalLayout_4 = QtWidgets.QHBoxLayout() self.horizontalLayout_4.setSpacing(0) self.horizontalLayout_4.setObjectName("horizontalLayout_4") self.lineEdit = QtWidgets.QLineEdit(self.centralwidget) self.lineEdit.setObjectName("lineEdit") self.lineEdit.setReadOnly(True) self.horizontalLayout_4.addWidget(self.lineEdit) self.horizontalLayout_3 = QtWidgets.QHBoxLayout() self.horizontalLayout_3.setObjectName("horizontalLayout_3") self.pushButton_5 = QtWidgets.QPushButton(self.centralwidget) self.pushButton_5.setObjectName("pushButton_5") self.horizontalLayout_3.addWidget(self.pushButton_5) self.pushButton_6 = QtWidgets.QPushButton(self.centralwidget) self.pushButton_6.setObjectName("pushButton_6") self.horizontalLayout_3.addWidget(self.pushButton_6) self.horizontalLayout_4.addLayout(self.horizontalLayout_3) self.verticalLayout_3.addLayout(self.horizontalLayout_4) self.horizontalLayout_2 = QtWidgets.QHBoxLayout() self.horizontalLayout_2.setObjectName("horizontalLayout_2") self.verticalLayout = QtWidgets.QVBoxLayout() self.verticalLayout.setObjectName("verticalLayout") self.label = QtWidgets.QLabel(self.centralwidget) self.label.setObjectName("label") self.verticalLayout.addWidget(self.label) self.textEdit = QtWidgets.QTextEdit(self.centralwidget) self.textEdit.setReadOnly(True) font = QtGui.QFont() font.setFamily("JetBrains Mono, 微软雅黑") self.textEdit.setFont(font) self.textEdit.setObjectName("textEdit") self.verticalLayout.addWidget(self.textEdit) self.horizontalLayout_2.addLayout(self.verticalLayout) self.verticalLayout_2 = QtWidgets.QVBoxLayout() self.verticalLayout_2.setObjectName("verticalLayout_2") self.label_2 = QtWidgets.QLabel(self.centralwidget) self.label_2.setObjectName("label_2") self.verticalLayout_2.addWidget(self.label_2) self.textEdit_2 = QtWidgets.QTextEdit(self.centralwidget) self.textEdit_2.setObjectName("textEdit_2") self.textEdit_2.setReadOnly(True) self.verticalLayout_2.addWidget(self.textEdit_2) self.label_3 = QtWidgets.QLabel(self.centralwidget) self.label_3.setObjectName("label_3") self.verticalLayout_2.addWidget(self.label_3) self.textEdit_3 = QtWidgets.QTextEdit(self.centralwidget) self.textEdit_3.setStyleSheet("color:red") self.textEdit_3.setReadOnly(True) self.textEdit_3.setObjectName("textEdit_3") self.verticalLayout_2.addWidget(self.textEdit_3) self.horizontalLayout_2.addLayout(self.verticalLayout_2) self.verticalLayout_3.addLayout(self.horizontalLayout_2) self.horizontalLayout = QtWidgets.QHBoxLayout() self.horizontalLayout.setObjectName("horizontalLayout") self.pushButton = bianyi_btn(self.centralwidget) self.pushButton.setObjectName("pushButton") self.horizontalLayout.addWidget(self.pushButton) self.pushButton_2 = bianyi_btn(self.centralwidget) self.pushButton_2.setObjectName("pushButton_2") self.horizontalLayout.addWidget(self.pushButton_2) self.pushButton_3 = bianyi_btn(self.centralwidget) self.pushButton_3.setObjectName("pushButton_3") self.horizontalLayout.addWidget(self.pushButton_3) self.pushButton_4 = bianyi_btn(self.centralwidget) self.pushButton_4.setObjectName("pushButton_4") self.horizontalLayout.addWidget(self.pushButton_4) self.verticalLayout_3.addLayout(self.horizontalLayout) MainWindow.setCentralWidget(self.centralwidget) self.verticalLayout_2.setStretch(0, 0) self.verticalLayout_2.setStretch(1, 3) self.verticalLayout_2.setStretch(2, 0) self.verticalLayout_2.setStretch(3, 0) self.retranslateUi(MainWindow) self.pushButton_5.clicked.connect(self.slot_btn_chooseFile) self.pushButton_6.clicked.connect(self.clear) self.pushButton.key_pressed.connect(MainWindow.get_key) self.pushButton_2.key_pressed.connect(MainWindow.get_key) self.pushButton_3.key_pressed.connect(MainWindow.get_key) self.pushButton_4.key_pressed.connect(MainWindow.get_key) QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): _translate = QtCore.QCoreApplication.translate MainWindow.setWindowTitle(_translate("MainWindow", "系统软件开发 编译可视化 计科19-4 胡钧耀")) self.pushButton_5.setText(_translate("MainWindow", "选择文件")) self.pushButton_6.setText(_translate("MainWindow", "清空区域")) self.label.setText(_translate("MainWindow", "源文件")) self.label_2.setText(_translate("MainWindow", "结果")) self.label_3.setText(_translate("MainWindow", "错误信息")) self.pushButton.setText(_translate("MainWindow", "词法分析")) self.pushButton_2.setText(_translate("MainWindow", "语法分析")) self.pushButton_3.setText(_translate("MainWindow", "中间代码生成")) self.pushButton_4.setText(_translate("MainWindow", "目标代码生成")) def slot_btn_chooseFile(self): print("选择源文件:") fileName_choose, filetype = \ QFileDialog.getOpenFileName(self, "选取文件", './input_file/', # 起始路径 "All Files (*);;Text Files (*.txt)") # 设置文件扩展名过滤,用双分号间隔 if fileName_choose == "": print("\n取消选择") return fileName_choose = './input_file/' + fileName_choose.split('/')[-1] print("\n你选择的文件为:") self.lineEdit.setText(fileName_choose) self.show_file(fileName_choose) set_file_name(fileName_choose) print(get_file_name()) print("文件筛选器类型: ", filetype) def show_file(self, filename): file = open(file=filename, mode='r') s = file.read() file.close() self.textEdit.setText(s) return def clear(self): self.textEdit.setText('') self.textEdit_2.setText('') self.textEdit_3.setText('')