我正在開發需要表單的應用程序,但我不知道如何製作它。我正在尋找有用的信息(手冊,書籍等),但我找不到任何有用的信息。我想製作一個表單,當用戶點擊按鈕時,我想收集表單中的信息。使用uiBinder在gwt中構建表格
我正在使用GWT和UiBinder進行開發。
InterfazUsuario.ui.xml:
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
xmlns:g="urn:import:com.google.gwt.user.client.ui"
>
<g:DockLayoutPanel unit='EM'>
<g:center>
<g:FormPanel ui:field="form" action="/InterfazUsuario">
<g:HTMLPanel height="427px">
<g:Label text="Idioma:" width="49px"/>
<g:ListBox visibleItemCount="1" name="lbIdioma" width="118px" ui:field="rellenarIdioma"/>
<g:Label text="Tipo de Recurso:" width="100px"/>
<g:ListBox ui:field="rellenarTipoRecurso" name="lbTipoRecurso" visibleItemCount="1" width="118px"/>
<g:Label text="Motor de Búsqueda:" width="125px"/>
<g:ListBox name="lbMotorBusqueda" visibleItemCount="1" width="118px"/>
<g:Label text="Consulta:" width="125px"/>
<g:TextBox visibleLength="50" name="txtConsulta"/>
<g:Label text="Número de Recurso:" width="125px"/>
<g:ListBox name="lbNumRecurso" visibleItemCount="1" width="118px"/>
<g:Label text="Matriz:" width="125px"/>
<g:ListBox name="lbMatriz" visibleItemCount="1" width="118px"/>
<g:Label text="Fila:" width="125px"/>
<g:ListBox name="lbFila" visibleItemCount="1" width="118px"/>
<g:Label text="Columna:" width="125px"/>
<g:ListBox name="lbColumna" visibleItemCount="1" width="118px"/>
<g:Button width="142px" text="Aceptar" ui:field="btnAceptar"/>
</g:HTMLPanel>
</g:FormPanel>
</g:center>
</g:DockLayoutPanel>
InterfazUsuario.java
public class InterfazUsuario extends Composite {
//interface InterfazUsuarioUiBinder extends UiBinder<Widget, InterfazUsuario> {}
interface InterfazUsuarioUiBinder extends UiBinder<DockLayoutPanel, InterfazUsuario> {}
private static final InterfazUsuarioUiBinder binder = GWT.create(InterfazUsuarioUiBinder.class);
RootLayoutPanel root;
@UiField
ListBox rellenarIdioma;
@UiField
ListBox rellenarTipoRecurso;
@UiField
FormPanel form;
@UiField
Button btnAceptar;
public InterfazUsuario(List<String> idiomas, List<String> tipoRecurso){
System.out.println("Entra en el constructor");
// sets listBox
initWidget(binder.createAndBindUi(this));
for (Iterator iter = idiomas.iterator(); iter.hasNext();) {
System.out.println("Entra en el primer for");
String name = (String) iter.next();
rellenarIdioma.addItem(name);
}
System.out.println(rellenarIdioma.getItemText(1));
for(Iterator iter = tipoRecurso.iterator(); iter.hasNext();){
String tipoRec = (String) iter.next();
rellenarTipoRecurso.addItem(tipoRec);
}
System.out.println("vamos a salir del constructor");
// Add an event handler to the form.
form.addSubmitHandler(new FormPanel.SubmitHandler() {
public void onSubmit(SubmitEvent event) {
Window.alert("The text box must not be empty");
}
});
form.setAction("/InterfazUsuario");
form.setEncoding(FormPanel.ENCODING_MULTIPART);
form.setMethod(FormPanel.METHOD_POST);
form.addSubmitCompleteHandler(new FormPanel.SubmitCompleteHandler() {
@Override
public void onSubmitComplete(SubmitCompleteEvent event)
{Window.alert(event.getResults());
}
});
System.out.println("despues de llamar al handler");
System.out.println(form.getMethod());
}
@UiHandler("btnAceptar")
public void onClick(ClickEvent event) {
form.submit();
}
public InterfazUsuario(){
}
感謝。
所以走一步看一步,有什麼上述問題碼? –