单击按钮的处理程序

时间:2014-03-21 06:04:11

标签: gwt

我想在数据库中输入值后添加一个按钮并添加点击处理程序。 我希望那个按钮能够在问候服务上完成。 帮助我

public static void edit1(String fnme,String lnme,String clgn,String scn){

  greetingService.enter(fnme,lnme,clgn,scn, new AsyncCallback<String>()
    {   
    public void onSuccess(String result) 
        {
        Window.alert("successfully entered");
        // TODO Auto-generated method stub 
        Button bt =new Button("submit");
         RootPanel.get().add(bt);
         bt.addClickHandler(new MyClickHandler);

        }
    public void onFailure(Throwable caught) 
        {
            Window.alert("fail");
        }

     });


}
class MyClickHandler implements ClickHandler 
{
    public void onClick(ClickEvent e)
    {
      //create();        
     }
}

但这不起作用。

2 个答案:

答案 0 :(得分:0)

您需要点击处理程序吗? 无论如何,这是我认为你要做的事情:

Button bt =new Button("submit");
RootPanel.get().add(bt);
bt.addClickHandler(new MyClickHandler);

public static void edit1(String fnme,String lnme,String clgn,String scn)
{
    greetingService.enter(fnme,lnme,clgn,scn, new AsyncCallback<String>()
    {
        public void onSuccess(String result) 
        {
            Window.alert("successfully entered");
            // TODO Auto-generated method stub 
            create();
        }
        public void onFailure(Throwable caught) 
        {
                Window.alert("fail");
        }

    });
}

class MyClickHandler implements ClickHandler
{
    public void onClick(ClickEvent e)
    {
        // create();
    }
}

答案 1 :(得分:0)

您的MyClickHandleronClick()方法中没有执行任何操作。只要你输入代码它就应该工作。试试这个:

public static void edit1(String fnme,String lnme,String clgn,String scn){

    greetingService.enter(fnme,lnme,clgn,scn, new AsyncCallback<String>() {
        public void onSuccess(String result) {
            Window.alert("successfully entered");
            // TODO Auto-generated method stub 
            Button bt =new Button("submit");
            RootPanel.get().add(bt);
            bt.addClickHandler(new MyClickHandler() {
                public void onClick(ClickEvent e) {
                    //DO SOMETHING HERE
                }
            });
        }
        public void onFailure(Throwable caught) {
            Window.alert("fail");
        }
    });

}

class MyClickHandler implements ClickHandler {
    public void onClick(ClickEvent e) {
        /* OR DO SOMETHING HERE, BUT THAT WILL AFFECT ALL 
         * INSTANCES OF MyClickHandler
         */
    }
}