PyQt5直接用代码布局 -让按钮永远在右下角(addStretch)
import sys
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QHBoxLayout, QPushButton, QMessageBox, QApplication, QVBoxLayout, QWidget, \
QLabel
'''
PyQt5直接用代码布局 -让按钮永远在右下角(addStretch)
'''
class RightBottomButtonDemo(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 设置定位和左上角坐标
self.setGeometry(300, 300, 360, 260)
# 设置窗口标题
self.setWindowTitle('让按钮永远在右下角(addStretch) 的演示')
# 设置窗口图标
# self.setWindowIcon(QIcon('../web.ico'))
OKBtn = QPushButton('确定')
cancelBtn = QPushButton('取消')
# 水平布局
hbox = QHBoxLayout()
hbox.addStretch(0)
hbox.addWidget(OKBtn)
hbox.addWidget(cancelBtn)
# 垂直布局
vbox = QVBoxLayout()
btn1 = QPushButton('按钮1')
btn2 = QPushButton('按钮2')
btn3 = QPushButton('按钮3')
vbox.addStretch(0)
vbox.addWidget(btn1)
vbox.addWidget(btn2)
vbox.addWidget(btn3)
vbox.addStretch(1)
# 将水平布局放到垂直布局的最下面
vbox.addLayout(hbox) # 两个按钮始终在右下
self.setLayout(vbox)
if __name__ == '__main__':
app = QApplication(sys.argv)
# 设置应用图标
app.setWindowIcon(QIcon('../web.ico'))
w = RightBottomButtonDemo()
w.show()
sys.exit(app.exec_())