selección opcion múltiple multiple lista hacer formulario desplegable cuadros cuadro crear controles como combinados boton gwt listbox gwt2

opcion - ¿Cómo puedo hacer que el cuadro de lista de GWT se pueda editar a partir de la selección?



excel lista desplegable multiple (3)

Un navegador no proporciona dicho control. Tampoco lo hace GWT. Deberá codificar el suyo. EXT-GWT (no gratuito) ComboBox tiene esta funcionalidad. http://www.extjs.com/examples/ Así lo hace Smart GWT (también no gratuito) http://www.smartclient.com/smartgwt/showcase/#styled_combobox_category

Si imprimiera uno propio, comenzaría con un Composite que tiene un TextBox y un VerticalPanel que se muestra cuando se hace clic en un TextBox (o parte de él). Su panel contendría los elementos clicables.

Según mi requisito, he escrito un panel personalizado que mostrará tres ListBoxes para permitir al usuario seleccionar la fecha de estos cuadros de lista personalizados. Estos tres cuadros de lista son responsables de mostrar el valor de mes, día y año. Ahora me gustaría hacer que mis tres cuadros de lista sean editables y, al mismo tiempo, seleccionables. Me refiero a que quisiera proporcionarle a un usuario las preferencias para que la fecha se pueda editar y al mismo tiempo sea seleccionable. ¿Cómo puedo hacer esto en GWT? Aquí estoy usando GWT2.0. Cualquiera por favor da una idea.


Podrías resolverlo usando un suggestBox en lugar del cuadro de lista. Pero el usuario debería comenzar a escribir para mostrar la lista.


Puede usar el panel absoluto para obtener el mismo ... A continuación se muestra el fragmento de código.

Ocultar la casilla de selección mediante el cuadro de texto, ajuste el ancho y la ubicación del cuadro de texto para que cubra la lista desplegable ...

final AbsolutePanel absolute_panel_edit_list = new AbsolutePanel(); final TextBox onhold_textbox = new TextBox(); final ListBox onhold = new ListBox(); for (int onholdcount = 0; onholdcount < onHoldTypes.length; onholdcount++) { onhold.addItem(onHoldTypes[onholdcount]); } onhold.addKeyPressHandler(new KeyPressHandler() { @Override public void onKeyPress(KeyPressEvent event) { onhold_textbox.setStyleName("onhold_textbox"); absolute_panel_edit_list.add(onhold,0,8); absolute_panel_edit_list.add(onhold_textbox,1,10); absolute_panel_edit_list.setSize("142px", "35px"); flex_row4.removeCell(4, 9); flex_row4.setWidget(4, 9, absolute_panel_edit_list); onhold_textbox.addMouseOutHandler(new MouseOutHandler() { @Override public void onMouseOut(MouseOutEvent event) { String customized_time = onhold_textbox.getText(); int no_of_elements = onhold.getItemCount(); onhold.addItem(customized_time); onhold.setSelectedIndex(no_of_elements); flex_row4.removeCell(4, 9); flex_row4.setWidget(4, 9, onhold); flex_row4.setWidget(4, 11, completed_togglebutton); flex_row4.setWidget(4, 13, completed_label); } }); } });