EAS8.8 浏览器控件调用Java代码
使用浏览器控件嵌入web页面后,web页面与Java代码如何进行交换,浏览器如何调用Java代码。
发布版本:EAS8.8
上线日期:2022/10/31
补丁号:EAS8.8安装包
新特性介绍
- 浏览器控件调用Java代码
操作指引
1需要先参考浏览器控件的使用。
特性效果展示
下面将给出一个web页面调用Java代码的例子,web界面中有一个文本输入框和一个按钮,当点击按钮后会从StringProvider这个类获取文本并填充到文本输入框中。
首先准备Web页面clicktest.html 其代码如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=9,IE=Edge,chrome=1"> <title>从Java代码加载文本</title> <script> function copyText() { document.getElementById("field2").value=javaf.getStr(); } </script> </head> <body> 字段1: <input type="text" id="field2"> <br> <br> <button onclick="copyText()">复制文本</button> <p>在按钮点击时触发注册的Java函数。将从Java函数获取值填充到字段1中。</p> </body> </html>
其次准备StringProvider.java里面有一个方法getStr()返回文本用于填充到Web页面的字段1中其代码如下:
public class StringProvider { public String getStr() { return "测试浏览器控件调用java资源。"; } }
接下来准备主代码KDWebViewPanelFunctionTest.java,其会初始化一个浏览器控件并将创建StringProvider实例并注册为浏览的函数。
public class KDWebViewPanelFunctionTest extends JFrame { private KDWebViewPanel panel; public KDWebViewPanelFunctionTest(String name) { super(name); panel = new KDWebViewPanel(WebServer.getDefaultWebServer().getClassPathResourceURL( this.getClass().getName(), "clicktest.html"), new IPageReady() { @Override public void onReady(IExecutePanel panel) { System.out.println("page loaded."); //注册函数,需要在页面加载完毕后执行。 initFunction(); } }, false); setSize(800,450); add(panel.getMainComponent(), BorderLayout.CENTER); setVisible(true); panel.reload(); } private void initFunction() { //javaf表示javaScript对象,getStr为方法名,new StringProvider()java对象,false表示 //不将getStr映射为windows的函数名,这样如果需要在javascript里调用这个方法要使用 //javaf.getStr() panel.registerFunction("javaf", "getStr", new StringProvider(), false); } public static void main(String[] args) { SwingUtilities.invokeLater(()->new KDWebViewPanelFunctionTest("test browser panel")); } }
需要注意:注册浏览器函数的时机必须是页面加载完毕后,不然会抛出浏览器未初始化错误。
效果如下:
EAS8.8 浏览器控件调用Java代码
使用浏览器控件嵌入web页面后,web页面与Java代码如何进行交换,浏览器如何调用Java代码。发布版本:EAS8.8上线日期:2022/10/31补丁号:EA...
点击下载文档
本文2024-09-22 20:37:18发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-114822.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章