在JFrame中嵌入本机窗口

Gra*_*eed 6 java swing embedding jframe

有没有人知道支持在Java JFrame或JPanel中嵌入本机窗口的方法或API?

我找到了上一篇文章:

如何以独立于平台的方式在netbeans中的Java框架内运行外部程序?

我可以使用以下方法获取窗口句柄:

http://www.java-forums.org/advanced-java/44064-getting-window-id-window-frame.html

这很好用.

本文似乎表明它可能,但没有说明如何:

在JPanel中嵌入HWND(窗口句柄)

Ale*_*nov 0

我只能重复一下另一个问题中给出的答案: This is notsupported

使用 Windows API,您可以将窗口添加到HWNDJFramePanel不是JPanel!)或 中Canvas。然而 Java 永远不会知道你这么做了,它可能会破坏 AWT 代码中的许多假设。

即使您编写本机 Win32 应用程序,也无法将任意窗口嵌入到顶级窗口中。如果您要嵌入的窗口是顶级窗口,则当它成为另一个窗口的子窗口时,它可能无法正常运行,因为现在的假设又是错误的,某些消息的处理方式不同。