fans_wei 2015-01-20 09:38 采纳率: 30%
浏览 1659

GWT中写了textBox不能获得值

下面是方法:

 package com.packtpub.gwtbook.samples.client;

import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.rpc.ServiceDefTarget;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.RootPanel;
import com.google.gwt.user.client.ui.TextBox;

public class Samples implements EntryPoint { 

    public void onModuleLoad() {
        //创建textbox
        final TextBox primeNumber = new TextBox();
        System.out.println("得到值==="+primeNumber.getText());
        final PrimesServiceAsync primesService = (PrimesServiceAsync) GWT
                .create(PrimesService.class);
        ServiceDefTarget endpoint = (ServiceDefTarget) primesService;
        endpoint.setServiceEntryPoint(GWT.getModuleBaseURL() + "primes");
        //创建button
        final Button checkPrim = new Button();
        RootPanel.get().add(primeNumber);   
        RootPanel.get().add(checkPrim);
        checkPrim.setText("点一次");
        //点击调动事件
        checkPrim.addClickHandler(new ClickHandler() {
            public void onClick(ClickEvent event) {
                // TODO Auto-generated method stub
                AsyncCallback callBack = new AsyncCallback() {
                    public void onFailure(Throwable caught) {
                        // TODO Auto-generated method stub
                        Window.alert("服务出现错误");
                    }
                    public void onSuccess(Object result) {
                        // TODO Auto-generated method stub
                        if (((Boolean) result).booleanValue()) {
                            Window.alert("yes," + primeNumber.getText()
                                    + "是素数!");
                        } else {
                            Window.alert("no," + primeNumber.getText()
                                    + "不是素数!");
                        }
                    }
                };
                //方法判断获得值是否为素数,返回值为boolean
                primesService.isPrimeNumber(Integer.parseInt(primeNumber.getText()),callBack);
            }
        });


    }
}

Async中一个接口:

 public interface PrimesServiceAsync {
public void isPrimeNumber(int numberToVerify,AsyncCallback callback);
}

不知为什么primeNumber.getText()为什么总是为空?

GWT development mode中运行报错。

  • 写回答

1条回答 默认 最新

  • 微wx笑 Java领域优质创作者 2015-01-25 09:01
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作