初始化
This commit is contained in:
87
demo/design/main_win.py
Normal file
87
demo/design/main_win.py
Normal file
@@ -0,0 +1,87 @@
|
||||
# -*- 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"))
|
||||
Reference in New Issue
Block a user