2011-05-04 43 views
5

La clase javax.swing.JComboBox no admite el método setText. ¿Hay alguna forma de cómo puedo configurar el texto de un cuadro combinado editable? Como algo que puedo llamar jcombobox1.setText("Text has changed!");JComboBox setText Método

+0

¿Está buscando establecer el texto del cuadro combinado en _cualquier valor, o uno de la lista de valores en el modelo del cuadro combinado? –

Respuesta

12

Una vez ajustado el JComboBox a editable se puede hacer esto:

String item = box.getEditor().getItem().toString(); 

Para obtener la cadena que el usuario escribió o seleccionado. Y

box.getEditor().setItem("Text Has Changed"); 

para establecer su propio texto.

+1

¿No debería ser setItem() (ya que la pregunta quiere establecer el valor) en lugar de getObject() (que es getItem() en Java 6)? – Jerome

+0

@Jerome Eso es correcto. Lo corregiré. Eso es lo que obtienes con demasiada prisa. –

+0

¡Muchas gracias! :) –

8

Puede configurar el selectedItem a cualquier valor que quiera:

comboBox.setSelectedItem("text has changed"); 

Tenga en cuenta que la selectedItem se documenta de forma explícita para permitir que los elementos que son no parte del modelo.