我的窗口中有一个MDIarea,我输入的代码向我显示MDIarea中的一个新窗口(我有两个Qwidget窗口,我想在主窗口中显示):
InnerCompanySignupWindow A(sys);
InnerPersonSignUpWindow B(sys);
if(arg1 == "Company"){
// ui->InTheWindow->hide();
ui->mdiArea->addSubWindow(&A);
ui->mdiArea->activateNextSubWindow();
// ui->mdiArea->removeSubWindow(&B);
// hide();
}
if(arg1 == "Person"){
// ui->InTheWindow->hide();
ui->mdiArea->addSubWindow(&B);
ui->mdiArea->activateNextSubWindow();
//ui->mdiArea->removeSubWindow(&A);
// hide();
}
我该怎么办?使用MDIarea是正确的吗?
答案 0 :(得分:0)
您必须找到特定参数的mdi子窗口小部件,并将该窗口小部件设置为活动子窗口。
QMdiSubWindow *existing = findMdiChild(arg); // your custom function to find subwindow
if (existing) {
mdiArea->setActiveSubWindow(existing);
return;
}
如需更多信息,请遵循此example。