如何在PyQT5中拉伸QHboxLayout和QVBoxLayout?我应该使用哪种方法?结果的图片在链接中给出(如您所见,当窗口很小时,它也不适合窗口的形状)
from PyQt5.QtWidgets import QApplication, QMainWindow, QTextEdit,
QLabel, QVBoxLayout, QHBoxLayout, QWidget, QDesktopWidget
import sys
class Window(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
label1 = QLabel('Введите слова')
words = QTextEdit()
label2 = QLabel('Результат')
result = QTextEdit()
vbox1 = QVBoxLayout()
vbox1.addStretch(1)
vbox1.addWidget(label1)
vbox1.addWidget(words)
vbox2 = QVBoxLayout()
vbox2.addStretch(1)
vbox2.addWidget(label2)
vbox2.addWidget(result)
hbox = QHBoxLayout()
hbox.addStretch(1)
hbox.addLayout(vbox1)
hbox.addLayout(vbox2)
self.setLayout(hbox)
self.setGeometry(300, 300, 500, 500)
self.setWindowTitle('try')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
w = Window()
sys.exit(app.exec_())
小窗口
完整窗口
答案 0 :(得分:2)
您必须将 hbox 放入 QWidget 并将其设置为中央小部件。
main_widget = QWidget()
main_widget.setLayout(hbox)
self.setCentralWidget(main_widget)