【问题标题】:how to embed SWT browser in swing jframe如何在 Swing jframe 中嵌入 SWT 浏览器
【发布时间】:2014-09-07 02:00:04
【问题描述】:

我想将我的 SWT 浏览器嵌入到 swing jframe 中。 我尝试sample,但它需要调整窗口大小以加载浏览器窗口。 在不调整大小的情况下如何重新绘制画布?

【问题讨论】:

  • 为什么要这样做?有什么要求?为什么不使用任何 Swing 替代品?
  • 我想在我的 java 桌面应用程序中加载我的 html 页面并在其上执行我的 javascript 代码。我找到了一个浏览器类,它很好,但它在调用它的 jframe 后面,而且在浏览器窗口打开时我不能在其他打开的 jframe 中做任何事情
  • 那么为什么不使用任何 Swing 替代品呢?
  • 您推荐哪些替代品?

标签: java swing browser swt java-canvas


【解决方案1】:

这是一个关于 GIT 的工作示例,展示了如何将 SWT 嵌入到传统的 Swing JPanel 中: https://gist.github.com/caprica/6890618(文字版:here

诀窍是创建一个链接到 SWT shell 的java.awt.Canvas。这个画布可以添加到任何传统的 Swing 组件中。 SWT shell 循环由单独的线程管理。

这是我使用 Java 7 的 Windows 7 机器上的屏幕截图:

【讨论】:

  • djbrowser 我认为这是一个更好的解决方案,它包装了 swt 的东西,代码变得可读和可管理。您不必处理 SWT shell 等。
  • @benchpresser 你能在回复中发布一些示例代码吗?
  • 该示例确实适用于带有 Java6 的 Windows 7,但与提到的 OP 相同的问题发生了。您必须在任何内容可见之前调整框架的大小
猜你喜欢
  • 2011-01-02
  • 2011-10-21
  • 2012-04-12
  • 1970-01-01
  • 1970-01-01
  • 2019-09-19
  • 2013-12-08
  • 1970-01-01
  • 2014-12-11
相关资源
最近更新 更多