GWT:打印按钮

Gui*_*ido 1 gwt jsni

我正在尝试创建一个打印当前浏览器窗口的按钮.

这是我当前使用(或至少尝试使用)JSNI的代码:

private Button print = new Button(constants.print(), new ClickHandler() {
    @Override
    public void onClick(final ClickEvent event) {
        /*-{
            if ($wnd.print) { 
                $wnd.print(); 
                return true; 
            } else { 
                return false; 
            } 
        }-*/
    }           
});
Run Code Online (Sandbox Code Playgroud)

但是当我点击按钮时,没有任何反应.这是我的第一个GWT应用程序,所以我不确定如何实现它.

Ash*_*bhu 6

new Button(constants.print(),  new ClickHandler() {
        @Override
        public void onClick(final ClickEvent event) {
           print();
        }

        private native boolean print( ) /*-{
            if ($wnd.print) { 
                 $wnd.print(); 
                 return true; 
            } else { 
                 return false; 
            } 
        }-*/;  });
Run Code Online (Sandbox Code Playgroud)

应该管用!始终将JSNI放在本机方法中.

  • 顺便说一句,我发现你也可以使用GWT提供的静态方法Window.print()并避免使用JSNI. (8认同)