相关疑难解决方法(0)

如何在不改变其他Qt小部件的位置的情况下使Qt小部件不可见?

我有一个充满了QPushButtons和QLabels以及其他各种有趣的QWidgets的窗口,所有这些都是使用各种QLayout对象动态布局的......而我想要做的是偶尔让一些小部件变得不可见.也就是说,隐形窗口小部件仍会占用窗口布局中的正常空间,但它们不会被渲染:相反,用户只会在窗口小部件的矩形/区域中看到窗口的背景颜色.

hide()和/或setVisible(false)不会这样做,因为它们会导致小部件完全从布局中删除,允许其他小部件扩展以占用"新可用"空间; 我想避免的效果.

我想我可以创建一个QWidget覆盖paintEvent()(和mousePressEvent()等)的每个类型的子类为无操作(在适当的时候),但我更喜欢一个不需要我创建三十个不同QWidget子类的解决方案.

layout qt

37
推荐指数
3
解决办法
3万
查看次数

标签 统计

layout ×1

qt ×1