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

时间:2013-07-11 15:24:31

标签: java .net swing visual-studio user-interface

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

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

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

修改

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

  • 实现目标的详细解决方案,或,
  • 对我的方法应该是什么的好的见解/想法,或者,
  • 彻底解释为什么无法实现。

  • 1 个答案:

    答案 0 :(得分:5)

    ()战士的方式

    1. 从扩展程序加载JVM(使用jvm.dll)。
    2. 实施您自己的Applet容器。像这样AppletViewer
    3. 将Applet容器放在您的本机表单中。这很难,有很多方法可以获得Applet容器HWND(In Java Swing how do you get a Win32 window handle (hwnd) reference to a window?),但我不确定一个简单的SetParent可以做到这一点。
    4. 加载您的小程序。
    5. ()主人的方式

      1. 与浏览器一样使用NPAPI/NPRuntime
      2. 加载npjp2.dll Java插件。
      3. 加载小程序。
      4. (X)采用的解决方案是:

        1. 在另一个进程(Java标准)中使用JVM运行用Java编写的VS插件(如Applet)。
        2. 使用HWND(Win32 API)获取FindWindow
        3. 使用SetParent(Win32 API)和MoveWindow(Win32 API)来停靠窗口并调整其大小。
        4. 我可以将其命名为“最简单的方法”,但在另一个进程中运行Java将为您提供更多稳定性,因此这是“有效的方式”。我唯一担心使用来自另一个进程的窗口,用Java处理Windows消息的线程可能会干扰Visual Studio。但从我看来,没有什么可担心的。

          : - )