Java - Cómo crear un JDialog desde base de datos?

   
Vista:

Cómo crear un JDialog desde base de datos?

Publicado por Mario slax@openmailbox.org (27 intervenciones) el 13/05/2015 17:18:49
Hola Buen día.
Estoy haciendo una aplicación en swing java con conexión a base de datos postgresql.
Tengo un menu que lo mando a llamar desde la base y los nombres de los formularios los tengo también almacenados.
El problema es como hacer para que se cree, ya que en la base el campo es de tipo String y no he encontrado la manera de convertirlo a JDialog.
mi código esta así:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
protected class oyente implements ActionListener {
 
        @Override
        public void actionPerformed(ActionEvent e) {
            try {
                String nombre = e.getActionCommand(); //Nombre de JMenuItem es igual al nombre del formulario
                String consultado = "Select formulario from menu_hijo where nombre_formulario= ?";
                pstm3 = conexion.prepareStatement(consultado);
                pstm3.setString(1, sender);
                rSet = pstm3.executeQuery();
                JOptionPane.showMessageDialog(null, nombre, "Aqui", JOptionPane.INFORMATION_MESSAGE);
                if (rSet.next()) {
                    String vg = rSet.getString(1); // Almaceno el campo que tiene el nombre del formulario
                    String corto = vg.substring(19, 24);//Y solo guardo el nombre del formulario quitando la ruta donde esta
 
 
                }
            } catch (SQLException ex) {
                Logger.getLogger(temporal.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }

He visto que lo pueden hacer en C# de la siguiente manera:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
private void ChildClick(object sender, EventArgs e)
{
    // MessageBox.Show(string.Concat("You have Clicked ", sender.ToString(), " Menu"), "Menu Items Event",MessageBoxButtons.OK, MessageBoxIcon.Information);
    String Seqtx = "SELECT FRM_CODE FROM MNU_SUBMENU WHERE FRM_NAME='" + sender.ToString() + "'";
    SqlDataAdapter datransaction = new SqlDataAdapter(Seqtx, conn);
    DataTable dtransaction = new DataTable();
    datransaction.Fill(dtransaction);
    Assembly frmAssembly = Assembly.LoadFile(Application.ExecutablePath);
 
    foreach (Type type in frmAssembly.GetTypes())
    {
        //MessageBox.Show(type.Name);
        if (type.BaseType == typeof(Form))
 
        {
            if (type.Name == dtransaction.Rows[0][0].ToString())
 
            {
                Form frmShow = (Form)frmAssembly.CreateInstance(type.ToString());
                // then we  close all of the child Forms with  simple below code
                foreach (Form form in this.MdiChildren)
 
                {
 
                    form.Close();
 
                }
 
                frmShow.MdiParent = this;
 
                frmShow.WindowState = FormWindowState.Maximized;
 
                //frmShow.ControlBox = false;
 
                frmShow.Show();
 
            }
 
        }
 
    }
 
}

Alguien tendrá una idea de como hacerlo en java.

Saludos y gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Cómo crear un JDialog desde base de datos?

Publicado por Maverick (96 intervenciones) el 16/05/2015 01:04:02
Hola Mario,

Debes incluir el código en el evento del click de tu menú, tal como puedes apreciar en el código C# en realidad lo que se hace es comparar el String que obtienes en tu base de datos y comparar con el nombre del objeto JDialog. Si coincide muestra esa ventana.

Cualquier cosa no dudes en comunicarte a: oscardelphi@gmail.com

Saludos cordiales,

Manuel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Cómo crear un JDialog desde base de datos?

Publicado por Mario slax@openmailbox.org (27 intervenciones) el 18/05/2015 00:19:17
Buenas Tardes.
Oscar.
Te agradezco mucho tú respuesta y disculpa por contestarte hasta ahora.
Estaba muy atorado en este tema, y la verdad no le veia solución alguna; hasta estaba pensando cambiarme de al lenguaje de programación C# .
Con tú respuesta; me dieron ganas de investigar más y se me ocurrio una idea de como resolver el problema que tenía;tuve que volver a leer mis libros viejos y consultar varias páginas web.
Y la solución fue ocupar la clase import java.lang.reflect.Constructor;
Con esto ya puedo generar mi cualquier JDialog o JInternalFrame que este en la base de datos, con todas sus funciones y acciones.
Creó que me falta mucho para conocer bien el lenguaje de Java, sólo queda seguir aprendiendo; ya que es muy extenso y te hace pensar un poco más; creo que nos ponen a desarrollar más de habilidades que en otros.
Te tomó la palabra si tengo cualquier duda te puedo consultar.
Mil gracias, a veces hace falta que le den a uno un empujoncito.
Si llegas a necesitar ayuda, te ofrezco la mía.
Mi correo es: slax@openmailbox.org
Te envió un cordial saludo y que te la pases súper bien lo que resta de este día y que tengas un excelente inicio de semana.
Atte.
Mario Hernández.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar