gwt 中的jsni

JSNI 是将少量的 Javascript 代码嵌入到 java 中,和java中的 JNI 很类似。
先来看看一段代码
其中 native void helloJSNI()
/*-{
$wnd.alert("Hello, GWT JSNI!");
}-*/;
native 是关键子 表明它是本地方法 Java S cript 代码块写在
/*-{   }-*/ 中间 。 GWT 提供了 $wnd $doc 变量,它们分别代表窗口和文档对象。
在扩展库的时候
1 )首先在 xiangmu.html 中添加如下代码
<script type="text/Java S cript"src="Javascript/prototype.js">
</script>
<script type="text/Java S cript"src="Javascript/rico.fx.js">
</script>
这两个。 js 可以实现组件变成圆角
2
创建一个 java Coner.java
3 )添加一个私有方法
private native static void corner
(Element element)
/*-{
$wnd._nativeExtensions = false;
$wnd.Rico.Corner.round(element, null);
}-*/
$wnd.Rico.Corner.round(element,null); 这段代码调用了 rico.fx.js 中的 Rico.Corner.round(element,null) 方法。在这里要提醒的是得到一个 Rico 类的对象不可以用 new Rico(); 因为 GWT 编译所产生的所产生的代码在 iframe 中运行,所以要用到你所包含的对象的时候要用 $wnd 来调用。
4 )在写一个类方法来调用他
public static void corner(Widget widget)
{
corner(widget.getElement(), null);
}
5 )已经 OK
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值