重新聚焦浏览器窗口时,重点关注JWebBrowser问题

时间:2014-10-29 11:15:25

标签: java html swing

我在我的swing应用程序中使用DJBrowser来显示带有样式表的静态html页面。 JWebBrowser实例添加到面板内,面板位于JFrame内。问题是当浏览器框架重新获得焦点时焦点不会回到浏览器中。

我使用的是java 6(jdk 1.6.0_21具体)。

我在SimpleWebBrowserExample内尝试了DJProject。打开JWebBrowser后,焦点/光标将进入浏览器内容,例如谷歌搜索文本字段。当屏幕通过ALT + TAB散焦并使用相同的键重新聚焦时,焦点不再出现在文本字段内(不确定焦点的位置)。

在我的应用程序中,在浏览器中打开html页面后,用户通常希望使用CTRL + F选项在页面内找到一些单词,然后经常在应用程序和浏览器之间切换。但是切换到浏览器后用户无法访问CTRL + F选项,因为本机浏览器没有关注。 (除非他/她用鼠标点击浏览器)。

在阅读其他类似帖子之后,我尝试将焦点设置为原始组件,例如 - getNativeComponent().requestFocus(),但这不起作用。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

我从克里斯托弗·德克斯那里得到了我上面问题的答案。

如果您控制网页,您可以跟踪焦点控制,并可能执行Javascript代码以在您检测到重新获取焦点时恢复焦点。 Javascript代码可以是:

document.getElementById("mytext").focus();

这对我有帮助。现在,当窗口聚焦时,Web组件正在获得焦点。

与大家分享。

谢谢, 图莎尔