如何在Qtoolbar中添加可伸缩垫片?

ste*_*fen 18 c++ qt qt-creator

我希望我的一些工具栏操作看起来是左边的,有些是右边的.我Gtk我记得添加了一个可伸缩(可扩展)的分隔符.我如何在Qt中实现这一目标?

我使用Qt Creator,但我不怕编辑源代码,因此非常感谢任何一种解决方案.

Syn*_*xis 34

您可以使用自动展开的空窗口小部件,它就像您可以在Qt设计器中使用的垫片一样:

tb = my_toolbar;

QWidget* empty = new QWidget();
empty->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Preferred);
tb->addWidget(empty);

tb->addWidget(otherWidget);
Run Code Online (Sandbox Code Playgroud)

  • 请注意,这仅适用于附加在窗口顶部或底部的工具栏.对于可附加到左侧或右侧的工具栏,您还需要将垂直大小策略设置为Expanding:`empty-> setSizePolicy(QSizePolicy :: Expanding,QSizePolicy :: Expanding);` (3认同)
  • 我在使用insertUidget(而不是addWidget())的ui> setupUi之后立即使用它,以便将空间放置在我想要的位置. (2认同)