如何迭代窗口中的所有小部件?

时间:2015-08-20 03:37:47

标签: qt qwidget qmainwindow

我知道对于QObject,有一种方法可以找到所有被认为是孩子的QObject - 但我不知道这是否意味着我能够在MainWindow中找到所有小部件。另外,我不想找到任何非小部件。

我问,因为我试图将窗口设置为半透明,并且背景颜色显然不适用于所有窗口小部件。然而,我正在将它应用于我能想到的每个小部件。我不想改变全局不透明度 - 文本应该保持不透明。

下面的图片中包含设置半透明度的代码,以及窗口本身的图片。如您所见,文本编辑区域是彩色的。但我也是这样设定的(它是'Ed'),所以我不知道为什么会这样!

Pic of the code and the window.

1 个答案:

答案 0 :(得分:4)

您可以使用QObject::findChildren<QWidget*>()查找所有子窗口小部件。