⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 loginwidget.java.svn-base

📁 利用google开发的GWT工具
💻 SVN-BASE
字号:
package org.gjj.gwt.client;import java.util.List;import com.google.gwt.core.client.GWT;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.ClickListener;import com.google.gwt.user.client.ui.Composite;import com.google.gwt.user.client.ui.DecoratorPanel;import com.google.gwt.user.client.ui.DockPanel;import com.google.gwt.user.client.ui.Grid;import com.google.gwt.user.client.ui.HTML;import com.google.gwt.user.client.ui.HasHorizontalAlignment;import com.google.gwt.user.client.ui.HorizontalPanel;import com.google.gwt.user.client.ui.KeyboardListenerAdapter;import com.google.gwt.user.client.ui.PasswordTextBox;import com.google.gwt.user.client.ui.TextBox;import com.google.gwt.user.client.ui.Widget;public class LoginWidget extends Composite implements ClickListener{    PasswordTextBox pw = new PasswordTextBox();    TextBox usrName = new TextBox();    MainControlPanel mcPanel = new MainControlPanel();    LoginSystemAsync loginService;   // DockPanel mainDockP = new DockPanel();    DecoratorPanel mainDockP = new DecoratorPanel();    Button login;    Button clear;    /**     * constructor     */    public LoginWidget(){    	/*Main Dock Panel*///    	mainDockP.setBorderWidth(1);//    	mainDockP.setSpacing(5);//    	mainDockP.setStylePrimaryName("dock");    	initRPC();    	//mainDockP.add(buildLoginPanel(), DockPanel.CENTER);    	mainDockP.setWidget(buildLoginPanel());    	//init widget    	initWidget(mainDockP);    }    	/**	   * @author gaojinjun	   * @return DockPanel	   */	  public DockPanel buildLoginPanel(){		  		  DockPanel usrPanel = new DockPanel();		  /*USR Panel*/		  usrPanel.setStylePrimaryName("usrhorizontalpanel");		  usrPanel.setSpacing(10);		  		  HorizontalPanel head = new HorizontalPanel();		  head.setSpacing(5);		  		  head.add(new HTML("<h2 align=center>登录页</h2>"));		  //head.add(new HTML("<h2 align=center>HLA Cluster Manager</h2>"));		  		  usrPanel.add(head, DockPanel.NORTH);		  /*		   * Add username and password text  box		   */		  Grid namePw = new Grid(2,3);		  namePw.setText(0, 0, "用户名:");		  namePw.setWidget(0, 1, usrName);		  namePw.setText(1, 0, "密码:");		  namePw.setWidget(1, 1, pw);		  usrPanel.add(namePw,DockPanel.CENTER);		  /*		   * Add login and clear button		   */		  HorizontalPanel bnPanel = new HorizontalPanel();		  bnPanel.setSpacing(5);		  bnPanel.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);		  login = new Button("登录",new ClickListener(){			  public void onClick(Widget sender){				  isAccountValid();			  }		  });		  clear = new Button("清空",new ClickListener(){			  public void onClick(Widget sender){				  usrName.setText("");				  pw.setText("");			  }		  });		  		//init pw and usrName's click		  usrName.addKeyboardListener(new KeyboardListenerAdapter() {			  public void onKeyPress(Widget sender, char keyCode, int modifier){				  if(keyCode == '\r'){					  login.click();				  }			  }		  });	    pw.addKeyboardListener(new KeyboardListenerAdapter() {	    	public void onKeyPress(Widget sender, char keyCode, int modifiers){	    		if (keyCode == '\r'){	    			login.click();		    		}	    	}	    });		  bnPanel.add(login);		  bnPanel.add(clear);		  bnPanel.setCellHorizontalAlignment(login, HasHorizontalAlignment.ALIGN_LEFT);		  bnPanel.setCellHorizontalAlignment(clear, HasHorizontalAlignment.ALIGN_RIGHT);		  usrPanel.add(bnPanel, DockPanel.SOUTH);		  		  return usrPanel;	  }	  	  /**	   * @author gaojinjun	   * @param null	   * initial async rpc	   */	  public void initRPC(){		// get a handle on the async version of our service		  loginService = (LoginSystemAsync)GWT.create(LoginSystem.class);		  ServiceDefTarget endpoint = (ServiceDefTarget)loginService;		  String moduleRelativeURL = GWT.getModuleBaseURL() + "LoginSystem";		  endpoint.setServiceEntryPoint(moduleRelativeURL);	  }	  	  /**	   * @author gaojinjun	   * @return boolean	   */	  public void isAccountValid(){		// create the response handler		  final AsyncCallback callback = new AsyncCallback(){			  public void onFailure(Throwable caught) {				  System.out.println("error!");				  Window.alert("Sorry there was an error");			  }			  public void onSuccess(Object result) {				 boolean flag = result.toString() == "true";				 //flag = true;				 if(!flag)					  Window.alert("用户不存在或密码错误!");				  else {					  //login					 mainDockP.clear();					 mainDockP.add(mcPanel.buildMainControl());					  				  }			  }		  };		  loginService.isValid(usrName.getText(),pw.getText(),callback);	  }	public void onClick(Widget sender){			}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -