我们有一档申请,通过JNIWrapper植入一个E ocx部分。
在从jdk6转向jdk7之后,我们开始发现重点问题。 当嵌入的电离层电离层显示一个有文字领域的网页(例如, go角搜索页)时,会发现:
Browser抓住了重点,因此u可以开始在搜索文本领域打字。 每一关键类型都属于E ocx。 但这种重点变化似乎忽略了。 即便是将重点转向一个周转案文领域(而且周转显示连接输入曲线),所有类型的钥匙都与IEE ocx有关。
确定重点的唯一途径是取消和启动主要框架。 之后,重点似乎是一致的。 但是,如果再次在索戈里搜索文本中点击,重点就会再次破碎。
在处理jdk7时似乎发生了很大变化。 http://docs.oracle.com/javase/7/docs/webnotes/tsg/TSG-Desktop/html/awt.html
在Windows平台上,实施了“合成焦点”概念。 这意味着,重点所有者部分只能仿效其有重点的状态,而真正的本土重点则是“焦点代用”部分。 这一部分接收关键和输入方法的本地信息,并向重点所有人发送。 在“JDK7”之前,一个重点的代用品部分是在框架/方log中专门隐藏的儿童部分。 在JDK7,一个框架/方言本身作为重点代理。 现在,它不仅注重拥有的窗口中的部件,而且注重所有的儿童部分。 一个简单的窗口从来就得不到本地的焦点,而是依靠其所有者的集中代理。 该机制对用户来说是透明的,但在进行分解时应当加以考虑。
任何人都有确定行为的想法?
<
public static void main(String[] args) {
Browser browser = BrowserFactory.createBrowser(BrowserType.IE);
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(browser.getComponent(), BorderLayout.CENTER);
JPanel panel = new JPanel();
frame.getContentPane().add(panel, BorderLayout.NORTH);
textField = new JTextField();
panel.add(textField);
textField.setColumns(10);
frame.setSize(700, 500);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
browser.navigate("http://www.google.com");
}