import sys,cv2
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
class MainWidget(QWidget):
def __init__(self): # 创建窗口时调用i
super().__init__(None)
print("hello")
self.setUI() # 创建界面
def __del__(self): # 关闭窗口时调用
print("bye")
def setUI(self): # 创建界面
mlayout = QVBoxLayout() # 垂直布局
# 顶部组件
self.gq = QPushButton("国庆怎么样") # 添加按键
self.ly = QPushButton("旅游") # 添加按键
self.ms = QPushButton("美食") # 添加按键
self.pz = QPushButton("拍照") # 添加按键
self.ws = QPushButton("玩耍") # 添加按键
self.ych = QPushButton("演唱会") # 添加按键
self.ks = QPushButton("开始") # 添加按键
self.shui = QPushButton("猜猜谁") # 添加按键
self.wy = QPushButton("王源") # 添加按键
self.kx=QPushButton('开心')
self.bc=QPushButton('保存')
tmp = QHBoxLayout() # 水平框布局
tmp.addWidget(self.gq)
tmp.addWidget(self.ly)
tmp.addWidget(self.ms)
tmp.addSpacing(20) # 空格20
tmp.addWidget(self.pz)
tmp.addWidget(self.ws)
tmp.addWidget(self.ych)
tmp.addSpacing(20)
tmp.addWidget(self.ks)
tmp.addWidget(self.shui)
tmp.addSpacing(20) # 空格20
tmp.addWidget(self.wy)
tmp.addWidget(self.kx)
tmp.addStretch() # 组件平分空间大小
tmp.addWidget(self.bc) # 往水平框添加退出按键
mlayout.addLayout(tmp) # 往垂直布局添加水平框
# 第二步:定义一个框架,组建右侧组件
tmp = QFormLayout() # 表格布局
tmp.setLabelAlignment(Qt.AlignRight) # 表格右对齐
frame = QFrame() # 定义框架
frame.setMaximumWidth(260) # 框架的最大宽度为260
# 图像界面显示
self.imgLabel = QLabel('1') # 定义文本标签,用来显示图像
self.imgLabel.setAlignment(Qt.AlignCenter) # 居中对齐方式
self.imgLabel.setFrameShape(QFrame.Box) # 设置文本标签的框架形状
self.imgLabel.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding) # 设置文本标签的大小缩放方式
self.imgLabel2 = QLabel("2")
self.imgLabel2.setAlignment(Qt.AlignCenter)
self.imgLabel2.setFrameShape(QFrame.Box)
self.imgLabel2.setSizePolicy(QSizePolicy.Expanding, QSizePolicy.Expanding)
# 第三步:组装水平组件
midLayout = QHBoxLayout() # 定义水平框布局
midLayout.addWidget(self.imgLabel) # 往水平框布局添加文本标签
midLayout.addWidget(self.imgLabel2)
midLayout.addWidget(frame) # 往水平框布局添加第二步的框架
# 第四步:组装完整的界面
mlayout.addLayout(midLayout) # 添加第三步的水平组件
self.setLayout(mlayout) # 设置整个布局
def main():
app = QApplication(sys.argv) # 创建应用
w = MainWidget() # 创建窗口
w.setWindowTitle("星辰大海") # 窗口标题
w.resize(900, 800) # 窗口大小
w.show() # 显示窗口
sys.exit(app.exec_()) # 退出程序
main() # 调用主函
?可以放上图片,由于其他原因暂时没有放上。
|