GWTEXT之JSNI

来源:互联网 发布:数据分析在中国 编辑:程序博客网 时间:2024/05/22 03:24

在GWTEXT可以使用JSNI来调用GWT的函数:

方式:

【instance-expr】@class-name::method-name(param-signature)(arguments)

说明:instance-expr::对象实例,如果调用静态函数的话,则可以不需要这部分

class-name:函数所在的类(或子类)的完整名称

method-name:函数名称

param-signature:函数的参数签名

arguments:调用函数的实际参数


例如:

在数据列表中增加一个按钮:

ColumnConfig jsniColumn = new ColumnConfig("JSNI","jsni",100,true,new Renderer(){

public String render(Object value,CellMetadata cellMetadata,Record record,int rowIndex,int colNum,Store store){

return "<input type='button' value='JSNITEST'  onclick='jsnitest()' />";

}

}


上面的onclick的方法相当于外部的Javascript。

在JAVA中如何调用?

首先要写一个jsnitest方法:

private native void jsnitest(){

var gridId = this;

$Wnd.jsnitest=function(){

@com.gwtext.client.widgets.MessageBox::alert(Ljava/lang/String)("hello");  //静态的可以不需要实例对象;

gridId.@com.nt.nis.jbpm.app.client.ui.XXX:getGridId();//非静态的则需要实例对象来调用。

}

}

原创粉丝点击