Java - Problema con mi aplicación

 
Vista:
sin imagen de perfil

Problema con mi aplicación

Publicado por multisuo (4 intervenciones) el 23/10/2013 18:33:22
Hola a todos, estoy haciendo una aplicación e java y me encontré con el siguiente problema:
Yo quiero que la aplicación tenga una serie de botones al costado izquierdo y que dependiendo que botón aprietes el lado derecho cambie. Seria algo así:

Botones (Lado izquierdo)....|.........(Lado derecho - Opciones del botón)
*Pedidos...........................|.........Ejemplo: Pedidos
*Factura............................|.........Cantidad:...................Fecha:
*Cuenta Corriente...............|.........Detalle:....................Cliente:
*Clientes...........................|..........Fecha de entrega:
*Usuarios..........................|..........Aceptar(Botón).........Cancelar(Botón)

Ahora si apretarían en clientes el "lado derecho" debería cambiar por completo, y así con cada opción. Me estoy matando y no logro conseguirlo.
No les pido el código, sino que me digan que herramientas puedo usar, porque no encuentro la solución con las que me proporciona java.
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
Imágen de perfil de Alfredo

Problema con mi aplicación

Publicado por Alfredo (14 intervenciones) el 23/10/2013 22:31:38
hola bueno no entiendo bien el problema me gustaria que me expliques mas a detalle tienes una serie de botones de lado izquierdo y al presionar uno de esos botones el lado derecho cambie pero lo del lado derecho que es? jLabel o un jTextArea. intentare hacer algo a lo que entendi se que no pediste el codigo pero si lo que logor hacer es lo que estas pidiendo entonces podras hacer lo que necesitas. Saludos
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
Imágen de perfil de Alfredo

Problema con mi aplicación

Publicado por Alfredo (14 intervenciones) el 23/10/2013 23:27:00
por cierto creo que resultaria mas facil si usaras paneles en tu programa :)
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

Problema con mi aplicación

Publicado por multiuso (4 intervenciones) el 24/10/2013 00:20:54
El problema es que soy un poco principiante con java, exactamente es una aplicación de escritorio y estoy usando netbeans 7.3.1, pero el código lo genero todo a mano, no uso el GUI para generar el código.
Te comento lo que tenia pensado pero no me sale:
Tengo un solo JFrame, al cual le agrego un JDesktopPane para cargarle los componentes, al JDesktopPane lo deje a mi gusto y le agrege los botones, luego tenia pensado agregarle a los botones la funcionalidad de que me cambien el contenido del "lado derecho" que se encuentra en mi JDesktopPane, pero para que cada botón no cambie todo por completo había pensado en que cada botón al presionarlo haga que el "contenedor" (del otro botón) que antes estaba visible le haga un .setVisible(False), y cargue el "contenedor" que le tiene asignado el botón que a sido presionado.

Espero que hallas entendido lo que quiero hacer porque hasta ahí va todo bien, el problema radica en que nose que tipo de "contenedor" usar (los que yo conozco son: JInternalFrame, JPanel, JDesktopPane), y no quiero usar un JInternalFrame porque no quiero que se abra una ventana interna, ya que quiero cambiar es el contenido que esta en el JDesktopPane, por el hecho de usar un JDesktopPane no voy a usar otro adentro de ese (creo que lógicamente eso seria incoherente), y por ultimo me queda el JPanel (el cual nose usar muy bien).

Mis problemas con el JPanel son que nose como agregarlo al escritorio porque hago .add(...) como con cualquier componente y no aparece, y si lo agrego al JFrame se superpone tapando completamente mi JDesktopPane, por lo que había pensado hacer era dimensionar a mi JDesktopPane y a mi JPanel, para que el se vean los botones que estan en el Desktop y se superponga en un costado el Panel (sin tapar mis botones), pero no funciona.

Ahora yendo a lo que preguntaste, en el lado izquierdo solo hay 10 JButton y 2 JLabel, y del lado derecho depende del boton que presiones, ejemplo si presiono pedidos vas a encontrar en el siguiente orden:
1 JComboBox
1 JLabel 1 JTextField
1 JLabel 1 JTextArea
2 JLabel 2 JFormatedTextField
2 JButton
y así sigue con un par de cosas mas.

Conclusión: No tengo idea como solucionar el problema. Espero tu ayuda, muchas gracias por responder
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
Imágen de perfil de Alfredo

Problema con mi aplicación

Publicado por Alfredo (14 intervenciones) el 23/10/2013 23:59:50
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
 
public class Botones implements ActionListener{
 
    JButton jb1, jb2, jb3, jb4;
    JFrame winMain;
    JPanel jpMenu, jp1, jp2, jp3, jp4;
 
    public Botones() {
        winMain = new JFrame("Mostrar / Ocultar Jpanel");
        winMain.setLayout(new BorderLayout(4, 4));
 
        botNorte();
 
        winMain.add(jpMenu, BorderLayout.NORTH);
 
        winMain.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        winMain.setSize(360, 300);
        winMain.setResizable(false);
        winMain.setVisible(true);
    }
 
    public void botNorte(){
        jpMenu = new JPanel();
        jpMenu.setLayout(new FlowLayout());
 
        jb1 = new JButton("1"); jb2 = new JButton("2");
        jb3 = new JButton("3"); jb4 = new JButton("4");
 
        jb1.setSize(70, 25); jb2.setSize(70, 25); jb3.setSize(70, 25); jb4.setSize(70, 25);
 
        jb1.addActionListener(this); jb2.addActionListener(this); jb3.addActionListener(this); jb4.addActionListener(this);
 
        jpMenu.add(jb1); jpMenu.add(jb2); jpMenu.add(jb3); jpMenu.add(jb4);
    }
 
    public void jpanel1(){
        jp1 = new JPanel();
 
        JLabel jl1 = new JLabel("Este es el panel 1");
 
        jp1.add(jl1);
        jp1.setSize(100, 100);
        jp1.setVisible(false);
        jp1.setBorder(BorderFactory.createLineBorder(Color.black, 1));
    }
 
    public void jpanel2(){
        jp2 = new JPanel();
 
        JLabel jl1 = new JLabel("Este es el panel 2");
 
        jp2.add(jl1);
        jp2.setSize(100, 100);
        jp2.setVisible(false);
        jp2.setBorder(BorderFactory.createLineBorder(Color.black, 1));
    }
 
public void jpanel3(){
        jp3 = new JPanel();
 
        JLabel jl1 = new JLabel("Este es el panel 3");
 
        jp3.add(jl1);
        jp3.setSize(100, 100);
        jp3.setVisible(false);
        jp3.setBorder(BorderFactory.createLineBorder(Color.black, 1));
    }
 
public void jpanel4(){
    jp4 = new JPanel();
 
    JLabel jl1 = new JLabel("Este es el panel 4");
 
    jp4.add(jl1);
    jp4.setSize(100, 100);
    jp4.setVisible(false);
    jp4.setBorder(BorderFactory.createLineBorder(Color.black, 1));
}
 
    public static void main(String[] args) {
 
        Botones trin = new Botones();
 
    }
 
    @Override
    public void actionPerformed(ActionEvent e) {
        int op = Integer.parseInt(e.getActionCommand());
 
        switch(op){
            case 1:
                if(jp2 != null && jp2.isVisible()){
 
                    jp2.setVisible(false);
                    jpanel1();
                    winMain.add(jp1, BorderLayout.WEST);
                    this.jp1.setVisible(true);
                }else if(jp2==null){
                    jpanel1();
                    winMain.add(jp1, BorderLayout.WEST);
                    this.jp1.setVisible(true);
                }
                break;
            case 2:
                if(jp1 != null && jp1.isVisible()){
 
                    jp1.setVisible(false);
                    jpanel2();
                    winMain.add(jp2, BorderLayout.WEST);
                    this.jp2.setVisible(true);
                }else if(jp2==null){
                    jpanel2();
                    winMain.add(jp2, BorderLayout.WEST);
                    this.jp2.setVisible(true);
                }
                break;
            case 3:
                if(jp4 != null && jp4.isVisible()){
 
                    jp4.setVisible(false);
                    jpanel3();
                    winMain.add(jp3, BorderLayout.EAST);
                    this.jp3.setVisible(true);
                }else if(jp3==null){
                    jpanel3();
                    winMain.add(jp3, BorderLayout.EAST);
                    this.jp3.setVisible(true);
                }
                break;
            case 4:
               if(jp3 != null && jp3.isVisible()){
 
                    jp3.setVisible(false);
                    jpanel4();
                    winMain.add(jp4, BorderLayout.EAST);
                    this.jp4.setVisible(true);
                }else if(jp3==null){
                    jpanel4();
                    winMain.add(jp4, BorderLayout.EAST);
                    this.jp4.setVisible(true);
                }
                break;
        }
    }
}

este seria un ejemplo muy util para tu programa solo te toca cambiar la posicion de los botones y de los paneles
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Problema con mi aplicación

Publicado por multisuo (4 intervenciones) el 24/10/2013 00:24:59
Bárbaro Alfredo! Ahora estoy por entrar a la universidad, apenas salga pruebo tu código! Muchas gracias por la velocidad de respuesta y por el deseo de ayudar :D!
Sos un Genio!
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
Imágen de perfil de Alfredo

Problema con mi aplicación

Publicado por Alfredo (14 intervenciones) el 24/10/2013 01:35:47
:) no hay de que ami me sirve de practicas para aprender mas sobre temas que aveces en la universidad no se alcanzan a ver hice un test mas orientado a lo que pides y pues bueno solo es dedicarle tiempo para que quede de acuerdo a lo que necesitas cualquier duda sabes que aquí estamos


en el proyecto hay una clase y un jFrame si programas en Netbeans sera mas facil para que lo comprendas saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Problema con mi aplicación

Publicado por multisuo (4 intervenciones) el 25/10/2013 15:50:16
Genial Alfredo! Me salvaste con tu gran ayuda y el .rar adjunto! Estoy completamente agradecido!!! :D
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
Imágen de perfil de Alfredo

Problema con mi aplicación

Publicado por Alfredo (14 intervenciones) el 25/10/2013 15:55:57
Denada para eso estamos cualquier otra cosa en q pueda ayudarte aqui estare en los foros :3
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