所以,我正在GWT中为嵌入式Web浏览器(Sketchup)设计一个应用程序.我可以通过将window.location值更改为"skp :: myFunciton @ myParams"来控制Sketchup.Sketchup可以在浏览器中执行javascript.我想做的是让sketchup给我模型的内容.
public static native void getModel() /*-{
$wnd.location = "skp:getModel@";
}-*/;
Run Code Online (Sandbox Code Playgroud)
在第二个草图后有一个结果.但是我们如何将它归还给gwt?问题是入口点实例启动了请求,而JSNI只能将静态方法映射到javascript.
我以为我有一个事件和元素的解决方案......
//Sketchup javascript
var gwtwidget = document.getElementById("myTextArea")
gwtwidget.value = "blahblah";
gwtwidget.onchange();
Run Code Online (Sandbox Code Playgroud)
然后听取GWT的变化.唉,它不起作用.Gwt自己的事件系统覆盖,汇集,阻止(或其他)事件.我应该采取什么方法?我已经通过网络搜索信息,但我当然无法理解它.我猜的答案是......
1从javascript(以某种方式)调用入口点实例方法
2从gwt中拾取一个事件,将由gwt(以某种方式)拾取
3设置排序的异步回调接口机制(不知何故)