QWidget::winId的文档指出(除其他外)“如果一个小部件是非本地的(外星人)并且在其上调用了 winId,则该小部件将提供一个本地句柄。”
我不确定“外星人”在这种情况下是什么意思,但我现在选择忽略它。:)
因此,假设我的小部件现在有一个与之关联的有效本机句柄,那么我可以将该本机句柄传递给另一个进程并传递给QWidget::find并在第二个进程中获取一个有效的 QWidget 对象吗?
除了显示/隐藏它并将其附加到父小部件之外,我可能不需要在第二个过程中对小部件做太多其他事情。(保证不会在第一个进程中附加到任何父窗口小部件,并且在第一个进程的上下文中永远不可见)。
如果以上所有方法都有效:
第二个进程对该小部件有多少控制权?
第一个进程是否会像附加到第一个进程的 UI 一样接收用户输入事件,第一个进程是否能够正常更新小部件?
詹姆士