Java - Jframe con menu

 
Vista:

Jframe con menu

Publicado por Alexander (1 intervención) el 24/11/2017 03:43:38
Buenas, tengo una curiosidad y me gustaría saber como calmarla.

resulta que quiero crear un jframe el cual contenga un menu, en el menu por ejemplo hay tablas, inventarios etc ... es solo un ejemplo..

Entonces al yo darle en tablas me gustaria que el espacio que sobra aparte del menu muestre el contenido respectivo de la tabla y cuando le de en inventario me muestre el inventario...

quiero todo sin cambiar el menu, sin que parpadee como si el jframe se cambiara por otro que sea algo como si todo estubiera en el mismo jframe pero que el menu haga el llamado de los componentes

sera todo esto posible?

Muchas 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
Imágen de perfil de ale
Val: 3
Ha aumentado su posición en 6 puestos en Java (en relación al último mes)
Gráfica de Java

Jframe con menu

Publicado por ale (2 intervenciones) el 27/11/2017 05:52:37
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
import java.awt.Point;
import java.awt.event.*;
 
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumnModel;
 
 
 
public class Menu extends JFrame implements ItemListener{
	//aqui hago que la clase Menu sea combo JFrame y pueda usar el ItemListener que
	//es para el JComboBox
 
	private JComboBox combo;
	//este JComboBox servira para cambiar los elementos del menu
 
	private JScrollPane scroll;
	private Object[][] datoss;
	private String[] datos;
	private DefaultTableModel dtm;
	private JTable tabla;
	//Esta es la tabla
 
	private JTextArea area;
 
	private JButton boton;
 
	private JTextField text;
 
public Menu(){
	setLayout(null);
 
	combo=new JComboBox();
    combo.setBounds(50,50,200,30);
    combo.addItem("JTable");
    combo.addItem("TextArea");
    combo.addItem("JButton");
    combo.addItem("JTextField");
    add(combo);
    combo.addItemListener(this);
    //se agrega el JComboBox y se le agregan los elementos que contendra
 
    scroll      = new JScrollPane();
    datos    = new String[] {"Nombre","Sueldo"};
    dtm         = new DefaultTableModel(datoss,datos);
    tabla       = new JTable(dtm);
    scroll.setViewportView(tabla);
    scroll.setBounds(25,150,200,200);
    scroll.setVisible(false);
    add(scroll);
 
    area=new JTextArea("cualquier cosa");
    area.setBounds(50,200,100,100);
    area.setVisible(false);
    add(area);
 
 
    text=new JTextField("cualquier cosa x2");
    text.setBounds(50,200,100,25);
    text.setVisible(false);
    add(text);
 
    boton=new JButton("boton");
    boton.setBounds(50,200,100,25);
    boton.setVisible(false);
    add(boton);
 
    //todos los elementos los hicimos invisibles
 
}
public void itemStateChanged(ItemEvent e){
	//con el JComboBox solo haremos visibles e invisibles unos y otros es mucho codigo pero cumple lo que pediste
 
	 if (e.getSource()==combo) { //aqui detecta si se hace un cambio en el JComboBox
 
		 String tip=(String)combo.getSelectedItem(); //Se hace una variable que contiene lo que dice la opcion seleccionada
 
		 switch (tip){ //con el switch comparamos cada opcion posible y le damos una accion
		 case "JTable":
			 scroll.setVisible(true);
			 area.setVisible(false);
			 boton.setVisible(false);
			 text.setVisible(false);
			 break;
		 case "TextArea":
			 scroll.setVisible(false);
			 area.setVisible(true);
			 boton.setVisible(false);
			 text.setVisible(false);
			 break;
		 case "JButton":
			 scroll.setVisible(false);
			 area.setVisible(false);
			 boton.setVisible(true);
			 text.setVisible(false);
			 break;
		 case "JTextField":
			 scroll.setVisible(false);
			 area.setVisible(false);
			 boton.setVisible(false);
			 text.setVisible(true);
			 break;
		 }
	 }
 
}
public static void main (String[]args){
	Menu n=new Menu(); //esto es para manejar la ventana se hace la variable que es la clase 
					   //que ya anteriormente la hicimos tipo JFrame
	n.setSize(500,500); //tamaño de la ventana
	n.setVisible(true); //que se visible
	n.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //instruccion de cierre
	n.setLocationRelativeTo(null); //hacer que este centrada en la pantalla
}
}
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