在.NET Form/Visual Studio编辑器中查看Java GUI?

Eli*_*ist 6 .net java user-interface swing visual-studio

我的目标是VSPackage为我的Java应用程序编写一个Visual Studio插件(a ).我想知道是否有可能JPanelSystem.Windows.Forms实例中查看某些内容,或者更确切地说是一个内容Microsoft.VisualStudio.Editor.

我在想一个小程序,但我几乎被困在那里......

将Swing组件作为JPEG流式传输并以表格形式显示它是一个适用的想法吗?

编辑:

我真的很感谢答案,那就是"是"/"不"/"你为什么要这样做?".我决定以这种方式工作,所以我要求:

  • 实现我的目标的详细解决方案,或,
  • 关于我的方法应该是什么的好的见解/想法,或者,
  • 彻底解释为什么不可能实现.

  • Mar*_*ski 6

    ()战士的方式

    1. 从扩展中加载JVM(使用jvm.dll).
    2. 实现自己的Applet容器.像这样的AppletViewer.
    3. 将Applet容器放在您的本机表单中.这很难,有办法获取Applet容器HWND(在Java Swing中如何获得对窗口的Win32窗口句柄(hwnd)引用?),但我不确定简单的SetParent可以做到这一点.
    4. 加载您的Applet.

    ()主人的方式

    1. 像浏览器一样使用NPAPI/NPRuntime.
    2. 加载npjp2.dll Java插件.
    3. 加载您的小程序.

    (X)采用的解决方案是:

    1. 在另一个进程(Java标准)中使用JVM运行用Java编写的VS插件部分(如Applet).
    2. 获取HWND使用FindWindow(Win32 API).
    3. 使用SetParent(Win32 API)和MoveWindow(Win32 API)来停靠窗口并调整其大小.

    我可以将它命名为"最简单的方法",但在另一个进程中运行Java将为您提供更多稳定性,因此这是"有效的方式".我唯一担心使用来自另一个进程的窗口,用Java处理Windows消息的线程可能会干扰Visual Studio.但从我看来,没有什么可担心的.

    :-)