本文共 1185 字,大约阅读时间需要 3 分钟。
今天我们使用jxbrowser 实现js直接调用java代码。
调用javaTest类的 alert方法。
主要就是给浏览器对象添加一个监听,然后在页面渲染完成之后,获取到js的window对象,给window对象添加一个 属性。
破解版联系QQ 921888199
final Browser browser = new Browser(); BrowserView browserView = new BrowserView(browser); JFrame frame = new JFrame(); frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); frame.add(browserView, BorderLayout.CENTER); frame.setSize(700, 500); frame.setLocationRelativeTo(null); frame.setVisible(true); browser.addLoadListener(new LoadAdapter() { @Override public void onFinishLoadingFrame(FinishLoadingEvent event) { if (event.isMainFrame()) { JSValue window = browser.executeJavaScriptAndReturnValue("window"); // 给jswindows对象添加一个扩展的属性 JavaTest javaObject = new JavaTest(); window.asObject().setProperty("javaTest", javaObject); } } }); browser.loadURL("E:/workspace48/browser/test.html");
111111
public static class JavaTest { public void alert(String args) { System.out.println("im alert"); } }
转载地址:http://trwni.baihongyu.com/