oscarseguel.com
1
Tips de Componentes UI Java Swing con Netbeans
1.- Conversión de tipos de datos comunes:
El tipo de dato...
oscarseguel.com
2
5.- Componente JRadioButton; Seleccionando una opción:
Además de los JRadioButton, se debe utilizar un c...
oscarseguel.com
3
8.- Componente JList; Obteniendo el valor seleccionado:
// Siendo jlEnfermedades un JList
jlEnfermedades...
oscarseguel.com
4
12.- Componente JOptionPane; Mostrar un dialogo de confirmación:
int resp = JOptionPane.showConfirmDialo...
oscarseguel.com
5
16.- JComboBox + BD: Trabajar con combos con valores desde la base de datos
Las siguientes instrucciones...
oscarseguel.com
6
Continuación de JComboBox:
Para cargar el combo desde la base de datos se debe crear una instancia de la...
oscarseguel.com
7
19.- Componente JSPinner; Manipulando fechas
Desde la paleta controles swing se selecciona el componente...
oscarseguel.com
8
21.- Componente JSPinner; Estableciendo su valor desde BD
Ejemplo de trozo de código:
// Siendo jspFecha...
Próxima SlideShare
Cargando en…5
×

Tips componentes swing_v5

298 visualizaciones

Publicado el

Publicado en: Ingeniería
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
298
En SlideShare
0
De insertados
0
Número de insertados
3
Acciones
Compartido
0
Descargas
13
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

Tips componentes swing_v5

  1. 1. oscarseguel.com 1 Tips de Componentes UI Java Swing con Netbeans 1.- Conversión de tipos de datos comunes: El tipo de datos de la propiedad text de la mayoría de los componentes es un String Ejemplos para convertir a un String, o desde un String a otro tipo de dato: int numero1 = Integer.valueOf( jtfNumero1.getText() ); //String a int jtfNumero2.setText(String.valueOf(numero1)); //int a String 2.- Componente JOptionPane; Mostrando un mensaje: JOptionPane.showMessageDialog(null, "Hola mundo", "título ventana", JOptionPane.ERROR_MESSAGE); ** Ver más métodos de JOptionPane en las siguientes páginas 3.- Componente JDialog; Manejando un formulario hijo: Para abrir un formulario JDialog (Si el nombre de la clase que hereda a JDialog es FormularioHijo) Se haría de la siguiente forma en el formulario padre: FormularioHijo fh = new FormularioHijo(null, true); fh.setVisible(true); Para cerrar un JDialog desde un botón this.dispose() 4.- Componente JMenuItem; Agregando ítems al menú: Botón derecho sobre un jMenu (en vista Diseño) y seleccionar MenúÍtem como muestra la imagen
  2. 2. oscarseguel.com 2 5.- Componente JRadioButton; Seleccionando una opción: Además de los JRadioButton, se debe utilizar un componente ButtonGroup (no visible en el formulario). Después de definir los componentes JRadioButton en el formulario, se debe relacionar en cada uno de ellos la propiedad buttonGroup con el objeto ButtonGroup, para que solo uno se encuentre seleccionado siempre. 6.- Componente JRadioButton y JCheckBox; ver si se encuentra seleccionado: Para saber si los objetos JRadioButton o JCheckBox están seleccionados se debe consultar por su propiedad booleana selected a través del método accesador isSelected(): //Teniendo un componente JRadioButton llamado jrbMasculino jrbMasculino.isSelected() 7.- Componente JList; Utilizando listas de datos: Se debe definir un atributo en nuestra clase principal del tipo DefaultListModel DefaultListModel listModel = new DefaultListModel(); Se debe relacionar la propiedad model del componente JList: A la derecha de la propiedad model (Ficha properties) se presiona el botón Se selecciona Custom code Se establece la propiedad model del componente JList con la variable listModel: Para agregar ítems al objeto listModel se utiliza el método addElement(Object o), para obtener ítems get(int i), para eliminar removeElement(Object o), etc. listModel.addElement(“Item Uno”); //agregando un objeto de tipo String
  3. 3. oscarseguel.com 3 8.- Componente JList; Obteniendo el valor seleccionado: // Siendo jlEnfermedades un JList jlEnfermedades.getSelectedValue(); //Retorna un objeto 9.- Componente JList; Obteniendo la cantidad de elementos seleccionados: // Siendo jlEnfermedades un JList int total = jlEnfermedades.getSelectedValues().length 10.- Componente JList; Evento doble click: Se utiliza el método del evento mouseClicked() jlistaMouseClicked(java.awt.event.MouseEvent evt) //siendo JLista un JList if (evt.getClickCount()==2) { // esto se ejecuta al hacer doble click en el JList } 11.- Componente JComboBox; Seleccionando un ítem de una lista: Para agregar ítem a un combo (antes limpiar la propiedad model de JComboBox) // Siendo jcbCargos un JComboBox jcbCargos.addItem("Cargo 1"); Para obtener el índice del objeto seleccionado: // Siendo jcbCargos un JComboBox int i = jcbCargos.getSelectedIndex(); Para obtener el objeto seleccionado: // Siendo jcbCargos un JComboBox Object cargo = jcbCargos.getSelectedItem();
  4. 4. oscarseguel.com 4 12.- Componente JOptionPane; Mostrar un dialogo de confirmación: int resp = JOptionPane.showConfirmDialog( null, "Está seguro de que desea eliminar algo?", "Eliminación", JOptionPane.YES_NO_OPTION ); if (resp == JOptionPane.YES_OPTION) { //lógica en caso que respondan de forma positiva } 13.- JDialog Centrando la nueva ventana: Para poder centrar una ventana hija (JDialog) utilizamos la propiedad setLocationRelativeTo Resultados r = new Resultados(getFrame(), true); r.setLocationRelativeTo(getFrame()); r.setVisible(true); 14.- FrameView; Cambiando el titulo a nuestra ventana de inicio: Seleccionar el proyecto, click en propiedades, luego como se muestra en la imagen seleccionar categoría > Application > Title. Cambiar por el nuevo título de la ventana principal. 15.- Componentes: Cambiar el nombre de variable de un componente Seleccionar un componente, click en el botón derecho del mouse, seleccionar “Cambiar nombre de variable” Luego cambiar a un nombre adecuado con la lógica del formulario:
  5. 5. oscarseguel.com 5 16.- JComboBox + BD: Trabajar con combos con valores desde la base de datos Las siguientes instrucciones sirven para cargar un combo con valores desde la base de datos, obtener el valor de un ítem seleccionado, y/o establecer el valor seleccionado de un combo. Se define una clase llamada Item (una clase normal de Java), con dos atributos encapsulados, uno para manejar un identificador (id) oculto y otro para manejar el nombre a mostrar en el combo, además se sobrescribe el método toString para que muestre el valor del atributo nombre, esta clase sirve para todos los JComboBox a utilizar. public class Item { private int id; private String nombre; public Item(int id, String nombre) { this.id = id; this.nombre = nombre; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getNombre() { return nombre; } public void setNombre(String nombre) { this.nombre = nombre; } public String toString() { return nombre ; } }
  6. 6. oscarseguel.com 6 Continuación de JComboBox: Para cargar el combo desde la base de datos se debe crear una instancia de la clase Item y pasarla como elemento al combo. //Ejemplo de un método para cargar un combo public void cargarComboCargos() throws Exception { String sql = "select id, nombre_cargo, sueldo from cargo order by id "; ResultSet rs = stmt.executeQuery(sql); while (rs.next()) { jcbCargos.addItem(new Item(rs.getInt("id"), rs.getString("nombre_cargo"))); } } Notar que cuando se escribe new Item(… se esta creando un objeto de la clase Item y pasándola al combo. 17.- Componente JComboBox + BD; Obteniendo el valor seleccionado: Se define un método al cual se le pasa un JComboBox y este retorna el id del elemento seleccionado. private int getValorSeleccionadoCombo(JComboBox jCombo) { Item i = (Item) jCombo.getSelectedItem(); return i.getId(); } 18.- Componente JComboBox + BD; Estableciendo el valor seleccionado: Se puede definir cual ítem se muestra como seleccionado (por código) pasándole el identificador al siguiente método: private void setValorSeleccionadoCombo(JComboBox jCombo, int id) { for (int i = 0; i < jCombo.getItemCount(); i++) { Item item = (Item) jCombo.getItemAt(i); if (item.getId()==id) jCombo.setSelectedItem(item); } }
  7. 7. oscarseguel.com 7 19.- Componente JSPinner; Manipulando fechas Desde la paleta controles swing se selecciona el componente Spinner y arrastra hasta el formulario. Después de cambiar el nombre de variable del componente, y para que este pueda manipular fechas, se debe cambiar el modelo (propiedad model) como se muestra en la imagen. Notar que se debe cambiar el tipo de modelo a Date Para obtener el valor de la fecha se puede realizar de la siguiente forma: // Siendo jspFecha un componente JSPinner // Obtiene la fecha seleccionada del componente java.util.Date fecha = (java.util.Date) jspFecha.getValue(); Para establecer el valor de la fecha por código, se puede realizar de la siguiente forma: // Siendo jspFecha un componente JSPinner private void setValorJSPFecha(java.util.Date fecha) { jspFecha.setValue(fecha); } 20.- Componente JSPinner; Pasando su valor a BD Si se tiene una tabla llamada “tabla” con un campo timestamp llamado “fecha”, el siguiente ejemplo sirve para obtener desde un jSpinner la fecha, transfórmalo a un objeto TimeStamp (fecha/Hora) y grabarlo en el campo “fecha” de la tabla. //Ejemplo de fecha en JSPinner a base de datos try { java.util.Date fecha = (java.util.Date)jspFecha.getValue(); Timestamp fechaCampo = new Timestamp(fecha.getTime()); PreparedStatement ps = con.prepareStatement("update tabla set fecha = ? where id = ?"); ps.setTimestamp(1, fechaCampo); ps.setInt(2, id); ps.executeUpdate(); } catch (Exception e) { e.printStackTrace(); }
  8. 8. oscarseguel.com 8 21.- Componente JSPinner; Estableciendo su valor desde BD Ejemplo de trozo de código: // Siendo jspFecha un JSPinner, rs un objeto de Resulset, con su cursor apuntando a // un registro válido, y campo “fecha” de la tabla un timestamp. Timestamp fechaCampo = rs.getTimestamp("fecha"); fecha = (Timestamp) fechaCampo; jspFecha.setValue(fecha);

×