1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
foreach(QWidget *obj,QApplication::allWidgets ())
{
if (obj->objectName()=="Devise")
{
QMessageBox::information(this,"","Classe trouvée");
const QMetaObject *meta = obj->metaObject();
QMetaMethod construct = meta->constructor(0);
//
QGenericArgument parentArg = Q_ARG(QObject*, mdiArea);
QObject *w = meta->newInstance(parentArg);
construct.invoke(obj,parentArg);
QObject *w = obj->metaObject()->newInstance(Q_ARG(QObject,this));
//const QMetaObject *b = obj->metaObject();
//QWidget *w = QMetaObject::staticMetaObject::newInstance( Q_ARG(QObject, MainWindow));
//qstatic_cast<QWidget *> (obj) = QMetaObject::newInstance;
//obj = dynamic_cast<QWidget *> (w);
//mdiArea->addSubWindow(dynamic_cast<QWidget *> (w),Qt::Window);
mdiArea->addSubWindow(obj,Qt::Window);
obj->show();
}
} |
Partager