簡體   English   中英

使用 QTextEdit 時出現 Pyqt5 QGridlayout 問題

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM