众所周知,gwt页面是java代码所写,不存在html页面直接作用于gwt面板中。不过gwt也倒是提供了一些可用的功能,比如frame,这个是UI中的一个,内部可以设置URL,但是经过我测试后发现,这个frame在生成之后,在嵌套的面板周围会有一个框框,影响美观,具体能不能经过css修改,我没有多测试。日后有时间会试下。
我这里是要说明的是另一种方法,gwt提供了一个HTML的UI,这个UI有一个方法,即setHTML(String str)。好了,大致已经清楚,就是把一些字符串放到HTML这个UI中,然后就能在页面展示这个HTML了。但是要是把一个html页面的代码全部弄成字符串,有些不切实际。gwt的ClientBundle中提供了方法,可以引用外部资源。详细代码如下:
1 import com.google.gwt.core.shared.GWT; 2 import com.google.gwt.resources.client.ClientBundle; 3 import com.google.gwt.resources.client.TextResource; 4 5 public interface HtmlResources extends ClientBundle { 6 7 public static final HtmlResources INSTANCE = GWT.create(HtmlResources.class); 8 9 @Source("page.html") 10 public TextResource getHtml(); 11 }
其中用到了GWT.create()的延迟绑定方法,这里绑定了自身。
使用方法如下:
HTML html = new HTML(); String str =HtmlResources.INSTANCE.getHtml().getText(); html.setHTML(str); Panel.add(html);
使用也是及其简单,就这样把html页面的代码转换成了字符串了。
时间: 2024-10-08 19:52:26