Intento ocultar todos los widgets en el diseño. Pero parece que findChildren no trabaja en el diseño .Qt obtener hijos del diseño
Aquí está mi código de ejemplo:
tamañoQLayout * layout = widget -> findChild<QLayout *> (layoutName);
QList<QWidget *> list = layout -> findChildren<QWidget *>();
cout << list.size() << endl;
es 0, pero dentro de este diseño tengo algunos widgets. Pero el mismo código funciona bien si trato de obtener widgets desde el widget principal.
¿Cómo puedo obtenerlos del diseño apropiado?
Gracias,
El punto clave es que un diseño puede convertirse en un elemento secundario de un widget (porque ambos heredar 'QObject'), pero un widget no puede convertirse en un elemento secundario de un diseño. Un widget debe tener otro widget como principal y 'QLayout' no hereda' QWidget'. Los diseños envuelven cada elemento que contienen en un ['QLayoutItem'] (http://doc.qt.io/qt-4.8/qlayoutitem.html#QLayoutItem), por lo que se requiere un conjunto diferente de API para acceder al objeto subyacente. – ekhumoro