Я работаю с Qt на VS2012. Часть моего кода содержит перехват другого окна (другого приложения), которое работает. Мне удалось перехватить, но когда я хочу выпустить это окно, я не могу. Также, когда я закрываю приложение, другое окно должно освобождаться и продолжать работать как независимое приложение (например, до перехвата). Теперь это приложение все еще работает (в диспетчере оконных задач процесс все еще работает), но окна не видно.Освобождение окна из другого окна (Qt)?
часть моего кода, который позволяет перехватывать другое окно:
void MyApp::setWindow(const QString& name)
{
WId windowId = (WId) ::FindWindow(0, (TCHAR*)name.utf16());
if(windowId != NULL)
{
childWindow = QWindow::fromWinId(windowId); //QWindow* childWindow
childWidget = QWidget::createWindowContainer(childWindow); //QWidget* childWidget
childWidget->setParent(mainWidget); //QWidget* mainwidget = ui.mainWidget;
childWidget->show();
}
}
Я попытался освободить его от заходящего родителя как 0:
childWidget->setParent(0);
, но это не сработало.
Любая идея, как это сделать?
Вы когда-нибудь находили решение этого вопроса? – TheSHEEEP