当前位置: 代码迷 >> QT开发 >> QHBoxLayout中,隐藏一个控件后,怎么让其它控件不改变坐标
  详细解决方案

QHBoxLayout中,隐藏一个控件后,怎么让其它控件不改变坐标

热度:58   发布时间:2016-04-25 04:05:41.0
QHBoxLayout中,隐藏一个控件后,如何让其它控件不改变坐标
作了个键盘,里面N多按钮,
现在在一种情况下,不显示其中一个按钮,而其它按钮原地不动,
不管是设置visible还是hidden,都会重新布局的。有什么方法让其它按钮不动吗?

------解决方案--------------------
默认是不会重新布局的
除非你widget上面的子控件是托管给Layout的,
layout在hide和show后会重新布局
------解决方案--------------------
试试这个

void QLayout::setEnabled ( bool enable )

Enables this layout if enable is true, otherwise disables it.

An enabled layout adjusts dynamically to changes; a disabled layout acts as if it did not exist.

By default all layouts are enabled.

See also isEnabled().
------解决方案--------------------
一个思路,可以用一个空白的Widget代替你要隐藏的按钮