SmartGwt 下拉列表

下列代码实现的是 一个下拉列表的功能:

 

package com.tservice.PGA.smApp.client.Meeting;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.rpc.ServiceDefTarget;
import com.smartgwt.client.data.fields.DataSourceEnumField;
import com.smartgwt.client.data.fields.DataSourceTextField;
import com.smartgwt.client.widgets.form.fields.SelectItem;
import com.tservice.PGA.smApp.client.service.SmService;
import com.tservice.PGA.smApp.client.service.SmServiceAsync;

public class publicUserStringArrayList {
	SmServiceAsync mainService = (SmServiceAsync) GWT.create(SmService.class);
	ServiceDefTarget endpoint = (ServiceDefTarget) mainService;
	String moduleBaseURL = GWT.getModuleBaseURL()+"rpc";
	
	DataSourceTextField peopleText=null;
	SelectItem select=null;
	public publicUserStringArrayList(String titleId,String name){
		endpoint.setServiceEntryPoint(moduleBaseURL);
		//"people","参与者"
		 peopleText=new DataSourceTextField(titleId,name,10);
		 select=new SelectItem(titleId,name);
			mainService.getUserLists(new AsyncCallback(){
				public void onFailure(Throwable caught) {
					
				}
				public void onSuccess(Object result) {
					String[] str=(String[])result;
					select.setValueMap(str);
				}
				
			});
		
}
}
 

 

其他前端页面调用:

 

final publicUserStringArrayList userList=new publicUserStringArrayList("people","参与者");

 

DynamicForm form=new DynamicForm();
		form.setUseAllDataSourceFields(true);//只有这样才能让DataSource控件与常规控件(SelectItem)同事显示 
		form.setDataSource(dataSource);
		form.setFields(userList.select); 

 

DataSource dataSource=new DataSource();
dataSource.setClientOnly(true);
 

参考:

http://dragon0929.iteye.com/blog/611864#comments

 

 

你可能感兴趣的:(Google,Blog,ITeye,gwt)