いくつかのウィザードを生成する QMainWindow があります。QMainWindow には、オブジェクトのコレクションをリストする QFrame クラスがあります。ウィザードの QWizardPages 内からこのウィンドウを起動したいと考えています。
基本的に、シグナルを祖父母のスロットに接続する必要があります。これを行う最も明白な方法は次のとおりです。
MyMainWindow *mainWindow = qobject_cast<MyMainWindow *>(parent->parent());
if(mainWindow)
{
connect(button, SIGNAL(clicked()), mainWindow, SLOT(launchWidgetOne()));
} else
{
qDebug() << "Super informative debug message";
}
qt4を初めて使用するので、親ツリーとqobject_castをトラバースすることがベストプラクティスなのか、それともこれを行うためのより推奨される別の手段があるのか 疑問に思っていますか?