[英]Pyqt5 QGridlayout issue when using QTextEdit
我想使用網格布局調整高度和寬度。
class MatchStepWidget(QWidget):
def __init__(self,parent):
super(MatchStepWidget,self).__init__(parent)
self.initUI()
def initUI(self):
layout = QGridLayout(self)
test = QTextEdit(self)
bt_test = QPushButton(self)
layout.addWidget(test,0,0,1,1)
layout.addWidget(bt_test,1,0,1,1)
# bt_test.hide()
pass
if __name__ == "__main__":
app = QApplication(sys.argv)
myapp = MatchStepWidget(None)
myapp.show()
sys.exit(app.exec_())
我將按鈕和文本編輯的行跨度和列跨度設置為相同。 但是 Textedit 覆蓋的區域比按鈕多我如何使用網格布局調整 Textedit 區域?
默認的 QPushButton 不會垂直拉伸,如果要更改它,則必須修改 QSizePolicy。 此外,如果您希望 QPushButton 和 QTextEdit 的高度相同,則必須為布局的每一行設置拉伸因子:
def initUI(self):
test = QTextEdit()
bt_test = QPushButton()
layout = QGridLayout(self)
layout.addWidget(test, 0, 0)
layout.addWidget(bt_test, 1, 0)
sp = bt_test.sizePolicy() sp.setVerticalPolicy(QSizePolicy.Minimum) bt_test.setSizePolicy(sp) layout.setRowStretch(0, 1) layout.setRowStretch(1, 1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.