# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'main_win.ui' # # Created by: PyQt5 UI code generator 5.13.0 # # WARNING! All changes made in this file will be lost! # # 学习说明: # 这个文件由 Qt Designer 的 .ui 文件生成,真实项目中通常不手动维护。 # 这里添加中文注释是为了帮助理解界面树、布局和控件名称。 from PyQt5 import QtCore, QtGui, QtWidgets class Ui_MainWindow(object): """Qt Designer 生成的主窗口界面类。""" def setupUi(self, MainWindow): """ 创建控件并设置布局。 MainWinView 会调用 self.setupUi(self),因此这里创建出来的控件 会成为 MainWinView 的成员,例如 self.LogBrowser、self.YesBtn。 """ # 设置主窗口对象名,Qt 的样式和自动连接机制可能会用到它。 MainWindow.setObjectName("MainWindow") # 设置主窗口初始大小。 MainWindow.resize(475, 571) # 创建中心控件。QMainWindow 必须通过 setCentralWidget 设置主区域。 self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") # 创建垂直布局:上方放日志框,下方放按钮区域。 self.verticalLayout = QtWidgets.QVBoxLayout(self.centralwidget) self.verticalLayout.setObjectName("verticalLayout") # 创建日志显示控件,View 层会把它包装成 LogView。 self.LogBrowser = QtWidgets.QTextBrowser(self.centralwidget) self.LogBrowser.setObjectName("LogBrowser") self.verticalLayout.addWidget(self.LogBrowser) # 创建按钮区域 frame,用来承载水平布局。 self.frame = QtWidgets.QFrame(self.centralwidget) self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel) self.frame.setFrameShadow(QtWidgets.QFrame.Raised) self.frame.setObjectName("frame") # 创建水平布局:左右 spacer 负责把两个按钮推到中间。 self.horizontalLayout = QtWidgets.QHBoxLayout(self.frame) self.horizontalLayout.setObjectName("horizontalLayout") spacerItem = QtWidgets.QSpacerItem(132, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem) # 创建 Yes 按钮。binder.py 中会绑定它的 clicked 信号。 self.YesBtn = QtWidgets.QPushButton(self.frame) self.YesBtn.setObjectName("YesBtn") self.horizontalLayout.addWidget(self.YesBtn) # 创建 No 按钮。binder.py 中会绑定它的 clicked 信号。 self.NoBtn = QtWidgets.QPushButton(self.frame) self.NoBtn.setObjectName("NoBtn") self.horizontalLayout.addWidget(self.NoBtn) # 右侧弹性空白,与左侧 spacer 一起让按钮组居中。 spacerItem1 = QtWidgets.QSpacerItem(131, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) self.horizontalLayout.addItem(spacerItem1) self.verticalLayout.addWidget(self.frame) # 设置拉伸比例:日志区域占 10 份,按钮区域占 1 份。 self.verticalLayout.setStretch(0, 10) self.verticalLayout.setStretch(1, 1) MainWindow.setCentralWidget(self.centralwidget) # 设置可翻译文本,例如窗口标题和按钮文字。 self.retranslateUi(MainWindow) # Qt 自动槽连接机制,本 demo 没有依赖它,但生成代码会保留。 QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): """设置界面上的文字,便于后续做国际化翻译。""" _translate = QtCore.QCoreApplication.translate MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow")) self.YesBtn.setText(_translate("MainWindow", "yes")) self.NoBtn.setText(_translate("MainWindow", "no"))