我在我的swing应用程序中使用DJBrowser
来显示带有样式表的静态html页面。
JWebBrowser
实例添加到面板内,面板位于JFrame
内。问题是当浏览器框架重新获得焦点时焦点不会回到浏览器中。
我使用的是java 6(jdk 1.6.0_21具体)。
我在SimpleWebBrowserExample
内尝试了DJProject
。打开JWebBrowser
后,焦点/光标将进入浏览器内容,例如谷歌搜索文本字段。当屏幕通过ALT + TAB散焦并使用相同的键重新聚焦时,焦点不再出现在文本字段内(不确定焦点的位置)。
在我的应用程序中,在浏览器中打开html页面后,用户通常希望使用CTRL + F选项在页面内找到一些单词,然后经常在应用程序和浏览器之间切换。但是切换到浏览器后用户无法访问CTRL + F选项,因为本机浏览器没有关注。 (除非他/她用鼠标点击浏览器)。
在阅读其他类似帖子之后,我尝试将焦点设置为原始组件,例如 - getNativeComponent().requestFocus()
,但这不起作用。
有人可以帮忙吗?
答案 0 :(得分:0)
我从克里斯托弗·德克斯那里得到了我上面问题的答案。
如果您控制网页,您可以跟踪焦点控制,并可能执行Javascript
代码以在您检测到重新获取焦点时恢复焦点。 Javascript
代码可以是:
document.getElementById("mytext").focus();
这对我有帮助。现在,当窗口聚焦时,Web组件正在获得焦点。
与大家分享。
谢谢, 图莎尔