Ver Mensaje Individual
  #5 (permalink)  
Antiguo 26/12/2013, 10:04
rodo593
 
Fecha de Ingreso: agosto-2013
Mensajes: 90
Antigüedad: 10 años, 8 meses
Puntos: 1
Respuesta: [Consulta] Extends o instanciar el JFrame

Cita:
Iniciado por HackmanC Ver Mensaje
Hola,

Técnicamente, un JFrame no es una conexión. Es decir, no tiene ninguna lógica hacer que un Frame implemente un Conection, aún cuando parezca mas fácil desarrollarlo de esa forma.

Código Java:
Ver original
  1. (new MyJFrame()).getConection() // No es fácil de comprender su funcionamiento

Adicionalmente, si deseas verlo de esta forma, la clase Conexión va en la lógica de negocio, y en el peor de los casos en el acceso a datos. La clase JFrame va en la vista o presentación.

Yo te aconsejaría que la clase JFrame solamente tenga sus componentes y métodos para manejar los eventos (aunque normalmente se deberían poner en otra clase a guisa de Controlador). La clase Conexión debería ser independiente y ejecutar sus acciones de forma desacoplada. Quien quita y mañana quieras otro tipo de conexión.

Por supuesto necesitas un ConexiónIntr Interface y un ConexiónImpl Implementation.



Seguramente no estas siguiendo el procedimiento correcto, normalmente después de agregar todos los componentes al Frame se utiliza el método pack() de este para actualizar el Layout y por consiguiente actualizar el UI. (En lo personal no aconsejaría usar el método updateUI() que tiene otro objetivo)

Saludos,
Lo del .pack() no lo sabía, usare el método.

Creo que he entendido tu punto de vista.

Mira, por ejemplo yo he credo el típico ejemplo de la calculadora con GUI. Yo la hice con 2 clases: 1 - Ventana.java, 2 - Eventos.java.
En la primera tengo todos los elementos de la GUI, en esta creo un objeto de la clase eventos:
Código Java:
Ver original
  1. Eventos events = new Eventos(this); // El this es porque el constructor de la clase Eventos trabaja con un JFrame
Luego en la clase Eventos tengo los métodos que ejecutan los botones de la clase Ventana.java

¿Es así como me recomiendas trabajar?

Aparte. Es la primera vez que trabajo con bases de datos, y pues se me hace complicado entender todo lo que me has puesto, pero creo haber entendido, me recomiendas ordenar las cosas así:

Venatana.java (GUI) > Eventos.java(Maneja los eventos de la GUI) > Conexion.java (Implementa la conexion a la clase Eventos)

Saludos y gracias por responder.