【问题标题】:How to autoresize buttons if the window container changes its size如果窗口容器更改其大小,如何自动调整按钮大小
【发布时间】:2013-01-13 20:48:12
【问题描述】:

我有一个窗口和一堆按钮。这个窗口将是我的“主菜单”。放置按钮后,我希望将这些按钮固定到此窗口的大小。因此,如果窗口改变了他的(例如由用户),他们应该填充窗口并改变它们的大小。

我该怎么做?

【问题讨论】:

    标签: qt qt4 qt5 qpushbutton qsizepolicy


    【解决方案1】:

    你应该把你的按钮放在一个布局中(例如见QGridLayoutQVBoxLayout)。

    示例(假设window 是您的窗口,button 是您的按钮):

    QVBoxLayout* layout = new QVBoxLayout;
    layout->addWidget(button);
    window->setLayout(layout);
    

    这将使按钮水平展开。您是否也希望它们垂直扩展,您需要更改按钮的垂直大小策略,因为按钮的默认垂直策略是不占用比其首选大小更多的空间。

    button->setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
    

    【讨论】:

      猜你喜欢
      • 2016-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-28
      • 2015-04-11
      • 2021-09-20
      • 1970-01-01
      • 2019-07-03
      相关资源
      最近更新 更多