Vous êtes sur la page 1sur 3

Combos

El JComboBox nos permite mostrar una caja de seleccin en la que podemos seleccionar una sola opcin. Se utilizan en programas como Word para permitirnos seleccionar el tipo de letra que queremos poner. Para agregar un JComboBox en un proyecto de NetBeans selecciona su icono en la paleta (regularmente se encuentra a la derecha). Cmo Usar ComboBox? el usuario puede teclear un valor o elegirlo desde una lista. Un ComboBox editable ahorra tiempo de entrada proporcionando atajos para los valores ms comunmente introducidos. Un ComboBox no editable desactiva el tecleo pero an as permite al usuario seleccionar un valor desde una lista. Abajo podemos ver el cdigo de ComboBoxDemo.java que crea y configura el ComboBox. String[] patternExamples = { "dd MMMMM yyyy", "dd.MM.yy", "MM/dd/yy", "yyyy.MM.dd G 'at' hh:mm:ss z", "EEE, MMM d, ''yy", "h:mm a", "H:mm:ss:SSS", "K:mm a,z", "yyyy.MMMMM.dd GGG hh:mm aaa" }; currentPattern = patternExamples[0]; ... JComboBox patternList = new JComboBox(patternExamples); patternList.setEditable(true); patternList.setSelectedIndex(0); patternList.setAlignmentX(Component.LEFT_ALIGNMENT); PatternListener patternListener = new PatternListener(); patternList.addActionListener(patternListener); Este programa proporciona los valores para la lista desplegable del ComboBox con un array de strings. Sin embargo, los valores de la lista pueden ser cualquier Object, en cuyo caso el mtodo toString de la clase Object proporciona el texto a mostrar. Para poner una imagen u otro valor que no sea texto en una lista ComboBox, slo debemos proporcionar un celda personalizada renderizada con setRenderer. Cuidado: Un ComboBox es un componente compuesto: comprende un botn, un men desplegable, y cuando es editable, un campo de texto. El ComboBox dispara eventos de alto nivel, como eventos action. Sus componentes disparan eventos de bajo nivel como mouse, key y eventos de foco. Normalmente los componentes compuestos como el ComboBox deberan proporcionar oyentes para los eventos de alto nivel, porque los eventos de bajo nivel y los subcomponentes que los disparan son dependientes del sistema.

Aqu podemos ver una imagen de una aplicacin que utiliza un ComboBox no editable para permitir al usuario elegir una imagen de mascota desde una lista. //in the ComboBoxDemo2 constructor String[] petStrings = { "Bird", "Cat", "Dog", "Rabbit", "Pig" }; // Crea el combobox, // desactiva la edicin // y selecciona el primero JComboBox petList = new JComboBox(petStrings); petList.setSelectedIndex(0); Se utiliza un ComboBox no editable en lugar de un grupo de botones de radio para mostrar una o ms elecciones en estas situaciones.

Cuando el espacio es limitado Cuando el nmero de elecciones posibles es grande Cuando la lista se crea durante la ejecucin

Las siguientes tablas listan los mtodos y constructores ms utilizados de JComboBox. Otros mtodos a los que nos gustara llamar estn definidos por las clases JComponent y Component. Mtodo JComboBox(ComboBoxModel) JComboBox(Object[]) JComboBox(Vector) void addItem(Object) void insertItemAt(Object, int) Object getItemAt(int) Object getSelectedItem() void removeAllItems() void removeItemAt(int) void removeItem(Object) Elimina uno o ms tems de la lista. Obtiene un tem de la lista. Aade o inserta un tem en la lista. Crea un ComboBox con una lista predeterminada. Propsito

int getItemCount() void setModel(ComboBoxModel) ComboBoxModel getModel()

Obtiene el nmero de tems de la lista.

Selecciona u obtiene el modelo de datos que proporciona los tems de la lista.

Personalizar la Configuracin del ComboBox


Mtodo void setEditabe(boolean) boolean isEditable() void setRenderer(ListCellRenderer) ListCellRenderer getRenderer() void setEditor(ComboBoxEditor) Selecciona u obtiene el objeto responsable del pintado y edicin del tem seleccionado en el ComboBox. Esto slo se utiliza cuando el ComboBox es editable. ComboBoxEditor getEditor() Selecciona u obtiene el objeto responsable para crear el tem seleccionado en el ComboBox. Utilizado cuando el ComboBox no es editable. Propsito

Selecciona u Obtiene si el usuario puede teclear en el ComboBox.

Vous aimerez peut-être aussi