Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Generalizacion fallida

Hola Gente de JavaHispano !!!
Tengo unas ventanas diseñadas en un esquema MDI de desarrollo.
Tengo mi JFrame principal con un menú básico y una barra de herramientas.
También tengo 3 JInternalFrame, uno para las acciones de grabación en base de datos, otro para los informes y listados y el tercero para búsquedas y consultas varias.
Tengo definidos varios módulos que van colocados en diferentes oficinas de una empresa. Por ejemplo, el módulo de ventas, el módulo de compras y stock, el módulo contable, etc.
Lo que quiero hacer es que cada vez que empiezo a desarrollar un módulo nuevo, pueda elegir de la paleta de componentes el JFrame principal que yo diseñé, con mi menú base y mi barra de tareas para que esa sea mi ventana principal. Y también poder seleccionar los JInternalFrames que yo diseñé según lo que tenga que hacer (un abm, un listado o una consulta).
Hasta acá lo que quiero hacer. Ahora les cuento lo que probé hacer.
Lo primero que probé fue heredar (extender) directamente de mis objetos por el código. Creo una clase de java, extiendo de mi ventana principal y... El problema que encontré es que no me abre la solapa de diseño para poder modificar la interfaz gráfica y agregar y ubicar en pantalla los componentes que necesito (JLabels y JTextFields por ejemplo o el resto del menú específico del módulo).
Después, generé la JFrame como siempre en java. Entré en la solapa de source y le cambi;e la herencia (extends) del JFrame y mi ventana principal. Ahora veo la solapa de diseño, pero no veo nada de los menús y barra de herramientas que tengo en mi ventana padre.
Después de eso, grabé mis ventanas base (o padre) como "template". Esto me funcionó bien hasta que tuve que modificar algo en mi diseño. Por ejemplo, tuve que agregar un botón en la barra de herramientas. Volví a grabar como "template" y todas las pantallas que habían heredado de las pantallas antes de la modificación no se enteraron que había modificado algo.
Hay alguna manera de hacer esto sin morir en el intento o sacrificar infinitas horas rehaciendo todo lo hecho???
Desde ya, muchas gracias !!!

abril 28, 2017 | Registered Commenterdamian