放大Qt小部件,以便它可能涵盖其他小部件

时间:2011-12-31 13:27:53

标签: c++ qt user-interface

我在QMainWindow的小部件中的小部件中有一个复杂的小部件布局。在其中一个我有一个图像,它坐在角落里。我想要实现的是:如果图像被激活(例如点击),它应该被放大,因此它可能与其他小部件或其他小部件的一部分重叠。问题是,我仍然希望它保留在布局中,但是其他一切都保持原始大小和位置。

我正在考虑将一个空的但相似大小的小部件作为“占位符”,并将实际可调整大小的小部件浮动在其上。我的问题是,如果主窗口调整大小,最大化等等,它不能保证它保持在其位置。有更好或更有效的方法吗?

2 个答案:

答案 0 :(得分:0)

一种方法,如果要重叠的小部件与您要放大的小部件位于相同的布局中,并且该小部件的策略允许,则其他小部件中只有.setVisible(false)。保持可见的小部件应调整大小以覆盖所有可用区域!

答案 1 :(得分:0)

如果我找不到更好的解决方案,我想我会做以下事情:

MainWindow没有布局,只有两个QWidgets彼此叠加。底部将包含所有布局和其他所有内容,而上面一个将具有透明背景和可调整大小的小部件,可能支持许多间隔。