我有一个应用程序正在使用 QWidget::createWindowContainer 捕获和嵌入另一个应用程序 . 这是负责这个的代码:

void MainWindow::capture( WId wid )
{
    auto window = QWindow::fromWinId( wid );
    auto widget = QWidget::createWindowContainer( window );
    ui->ContentFrame->layout()->addWidget( widget );
}

应用程序已捕获并成功添加到布局中,但拖放操作在捕获的应用程序中不起作用 . 拖动窗口小部件时,如果窗口小部件保留在捕获的应用程序上,则光标将显示X,并且不会导致任何结果 .

我已经尝试确保在新创建的窗口小部件,嵌入的窗口小部件和捕获对话框中使用 setAcceptsDrops()setAttribute( Qt::WA_AcceptDrops ) 实际启用拖放,但这些似乎没有任何区别 .

拖放功能可以在捕获的应用程序单独启动时捕获,而不会捕获 . 这似乎是捕获过程打破了拖放 . 有什么我需要手动做以确保它在我的场景中工作?

一些额外的信息:我正在使用Qt 5.5.1在Ubuntu 16.04上进行开发 . 正在捕获的应用程序使用捕获应用程序中的 QProcess 启动 .