最初在Qt Creator中隐藏控件

Dan*_*ani 26 qt qt-creator qt-designer

我想仅在选择单选按钮时才显示组框.
我设法通过toggled(bool)将单选按钮的信号连接到setShown(bool)组框的插槽来实现.
问题是最初取消选择单选按钮但最初显示组框,所以我必须选择/取消选择单选按钮使其消失.
有没有什么办法可以让Qt Creator Designer中的组框最初不可见而不必在代码中执行?

ale*_*sdm 48

你不能.

visible属性似乎是自愿从Qt Designer的属性编辑器中删除,您无法将其添加回来.

您可以通过在要隐藏的窗口小部件的节点内添加以下XML块,手动将属性添加到.ui文件:

<property name="visible">
   <bool>false</bool>
</property>
Run Code Online (Sandbox Code Playgroud)

但是当您重新打开设计器界面时,窗口小部件将不可见或可移动.它仍然会出现在小部件层次结构中.

  • 我建议不要修改“.ui”文件,因为它是自动生成的。只需在“__init__”中添加“self.ui.widget_name.setVisible(False)”即可。 (5认同)

Nic*_*ith 5

您可以尝试使用Properties进行操作(请看setHidden),但是在代码中这样做要容易得多。

所以你会做:

ui setup code
ui->groupBox->setHidden(true)

radio button slot
if true ui->groupBox->setHidden(false)
else if false ui->groupBox->setHidden(true)
Run Code Online (Sandbox Code Playgroud)

这实际上是最简单的方法,我从来没有在Qt已经使用的Designer中添加属性的运气很大。