我有以下代码,在QGridLayout中放置按钮和文本框。请注意,我将第3列和第4列用于放置它们。

    QGridLayout *insAddPanel = new QGridLayout();
    {
        QLineEdit* ledInstrumentName = new QLineEdit();
        insAddPanel->addWidget(ledInstrumentName, 0, 3);

        QPushButton* btnAddInstrument = new QPushButton();
        btnAddInstrument->setText("Add");
        insAddPanel->addWidget(btnAddInstrument, 0, 4);
    }
    mainLayout->addLayout(insAddPanel);
    ......

但是,当我运行此命令时,会得到如下信息:

我希望文本编辑和按钮仅占据可用水平空间的2/5。这就是为什么我将它们放在第三和第四列中的原因。由于这不起作用,我该如何完成? Qt中是否有空白空间小部件之类的东西?我搜索了但没有找到它。

最佳答案

使用void QGridLayout::setColumnStretch ( int column, int stretch )

您可以为所有列设置stretch = 1。它将提供您想要的 View 。

关于c++ - QtQGridLayout中的Qt空白列?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21824772/

10-12 03:46