Código de Java - No hallo cómo hacer que funcione

Imágen de perfil

No hallo cómo hacer que funcionegráfica de visualizaciones


Java

Publicado el 17 de Junio del 2022 por Eduardo Roberto
801 visualizaciones desde el 17 de Junio del 2022
Tengo un problema acá, compañeros, el sigueinte código forma parte de un proyecto de tres clases de Java. Éstá es la última de ellas. No hallo cómo hacer para que me cargue las funciones de la barra de Menús como cambiar color, calcular las vacaciones e incluso mostrar la ayuda. Estuve dándole a ese código por semanas y nada. A ver si alguienme echa acá una mano, ¿No? Se los agradezco de pana. Saludos desde Venezuela.

Requerimientos

Java SE 6.0 en adelante y cualquier editor de texto. Nada más.

1.0
estrellaestrellaestrellaestrellaestrella(6)

Publicado el 17 de Junio del 2022gráfica de visualizaciones de la versión: 1.0
802 visualizaciones desde el 17 de Junio del 2022
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

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
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
 
public class Principal extends JFrame implements ActionListener{
 
  private JMenuBar mb;
  private JMenu menuOpciones, menuCalcular, menuAcercaDe, menuColorFondo;
  private JMenuItem miCalculo, miRojo, miNegro, miMorado, miAzul, miVerde, miElCreador, miSalir, miNuevo;
  private JLabel labelLogo, labelBienvenido, labelTitle, labelNombre, labelAPaterno, labelAMaterno, labelDepartamento, labelAntiguedad, labelResultado, labelfooter;
  private JTextField txtNombreTrabajador, txtAPaternoTrabajador, txtAMaternoTrabajador;
  private JComboBox comboDepartamento, comboAntiguedad;
  private JScrollPane scrollpane1;
  private JTextArea textarea1;
  String nombreAdministrador = "", AP = "", AM = "", Departamento = "", Antiguedad = "";
 
  public Principal() {
    setLayout(null);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    setTitle("Pantalla principal");
    getContentPane().setBackground(new Color(255,0,0));
    setIconImage(new ImageIcon(getClass().getResource("images/System-help.png")).getImage());
    Bienvenida ventanaBienvenida = new Bienvenida();
    nombreAdministrador = ventanaBienvenida.texto;
 
    mb = new JMenuBar();
    mb.setBackground(new Color(255, 0, 0));
    setJMenuBar(mb);
 
    menuOpciones = new JMenu("Opciones");
    menuOpciones.setBackground(new Color(255,0,0));
    menuOpciones.setFont(new Font("Andale Mono", 1, 14));
    menuOpciones.setForeground(new Color(255,255,255));
    mb.add(menuOpciones);
 
    menuCalcular = new JMenu("Calcular");
    menuCalcular.setBackground(new Color(255,0,0));
    menuCalcular.setFont(new Font("Andale Mono", 1, 14));
    menuCalcular.setForeground(new Color(255,255,255));
    mb.add(menuCalcular);
 
    menuAcercaDe = new JMenu("Acerca de");
    menuAcercaDe.setBackground(new Color(255,0,0));
    menuAcercaDe.setFont(new Font("Andale Mono", 1, 14));
    menuAcercaDe.setForeground(new Color(255,255,255));
    mb.add(menuAcercaDe);
 
    menuColorFondo = new JMenu("Color de fondo");
    menuColorFondo.setBackground(new Color(255,0,0));
    menuColorFondo.setFont(new Font("Andale Mono", 1, 14));
    menuColorFondo.setForeground(new Color(255,255,255));
    menuOpciones.add(menuColorFondo);
 
    miCalculo = new JMenuItem("Vacaciones");
    miCalculo.setFont(new Font("Andale Mono", 1, 14));
    miCalculo.setForeground(new Color(255,0,0));
    menuCalcular.add(miCalculo);
    miCalculo.addActionListener(this);
 
    miRojo = new JMenuItem("Rojo");
    miRojo.setFont(new Font("Andale Mono", 1, 14));
    miRojo.setForeground(new Color(255,0,0));
    menuColorFondo.add(miRojo);
    miRojo.addActionListener(this);
 
    miNegro = new JMenuItem("Negro");
    miNegro.setFont(new Font("Andale Mono", 1, 14));
    miNegro.setForeground(new Color(255,0,0));
    menuColorFondo.add(miNegro);
    miNegro.addActionListener(this);
 
    miMorado = new JMenuItem("Morado");
    miMorado.setFont(new Font("Andale Mono", 1, 14));
    miMorado.setForeground(new Color(255,0,0));
    menuColorFondo.add(miMorado);
    miMorado.addActionListener(this);
 
    miAzul = new JMenuItem("Azul");
    miAzul.setFont(new Font("Andale Mono", 1, 14));
    miAzul.setForeground(new Color(255,0,0));
    menuColorFondo.add(miAzul);
    miAzul.addActionListener(this);
 
    miVerde = new JMenuItem("Verde");
    miVerde.setFont(new Font("Andale Mono", 1, 14));
    miVerde.setForeground(new Color(255,0,0));
    menuColorFondo.add(miVerde);
    miVerde.addActionListener(this);
 
    miNuevo = new JMenuItem("Nuevo");
    miNuevo.setFont(new Font("Andale Mono", 1, 14));
    miNuevo.setForeground(new Color(255,0,0));
    menuOpciones.add(miNuevo);
    miNuevo.addActionListener(this);
 
    miElCreador = new JMenuItem("El Creador");
    miElCreador.setFont(new Font("Andale Mono", 1, 14));
    miElCreador.setForeground(new Color(255,0,0));
    menuOpciones.add(miElCreador);
    miElCreador.addActionListener(this);
 
    miSalir = new JMenuItem("Salir");
    miSalir.setFont(new Font("Andale Mono", 1, 14));
    miSalir.setForeground(new Color(255, 0, 0));
    menuOpciones.add(miSalir);
    miSalir.addActionListener(this);
 
    ImageIcon imagen = new ImageIcon("images/logo.jpeg");
    labelLogo = new JLabel(imagen);
    labelLogo.setBounds(5,5,250,100);
    add(labelLogo);
 
    labelBienvenido = new JLabel("Bienvenido, " + nombreAdministrador);
    labelBienvenido.setBounds(280,30,300,50);
    labelBienvenido.setFont(new Font("Andale Mono", 1, 32));
    labelBienvenido.setForeground(new Color(255, 255, 255));
    add(labelBienvenido);
 
    labelTitle = new JLabel("DATOS DEL TRABAJADOR PARA EL CALCULO DE VACACIONES");
    labelTitle.setBounds(45,140,900,25);
    labelTitle.setFont(new Font("Andale Mono", 0, 14));
    labelTitle.setForeground(new Color(255, 255, 255));
    add(labelTitle);
 
    labelNombre = new JLabel("Nombre completo:");
    labelNombre.setBounds(25,188,180,25);
    labelNombre.setFont(new Font("Andale Mono", 1, 12));
    labelNombre.setForeground(new Color(255,255,255));
    add(labelNombre);
 
    txtNombreTrabajador = new JTextField();
    txtNombreTrabajador.setBounds(25,213,150,25);
    txtNombreTrabajador.setBackground(new java.awt.Color(224, 224, 224));
    txtNombreTrabajador.setFont(new java.awt.Font("Andale Mono", 1, 14));
    txtNombreTrabajador.setForeground(new java.awt.Color(255, 0, 0));
    add(txtNombreTrabajador);
 
    labelAPaterno = new JLabel("Apellido paterno:");
    labelAPaterno.setBounds(25,248,180,25);
    labelAPaterno.setFont(new Font("Andale Mono", 1, 12));
    labelAPaterno.setForeground(new Color(255,255,255));
    add(labelAPaterno);
 
    txtAPaternoTrabajador = new JTextField();
    txtAPaternoTrabajador.setBounds(25,273,150,25);
    txtAPaternoTrabajador.setBackground(new java.awt.Color(224, 224, 224));
    txtAPaternoTrabajador.setFont(new java.awt.Font("Andale Mono", 1, 14));
    txtAPaternoTrabajador.setForeground(new java.awt.Color(255, 0, 0));
    add(txtAPaternoTrabajador);
 
    labelAMaterno = new JLabel("Apellido materno:");
    labelAMaterno.setBounds(25,308,180,25);
    labelAMaterno.setFont(new Font("Andale Mono", 1, 12));
    labelAMaterno.setForeground(new Color(255,255,255));
    add(labelAMaterno);
 
    txtAMaternoTrabajador = new JTextField();
    txtAMaternoTrabajador.setBounds(25,334,150,25);
    txtAMaternoTrabajador.setBackground(new java.awt.Color(224, 224, 224));
    txtAMaternoTrabajador.setFont(new java.awt.Font("Andale Mono", 1, 14));
    txtAMaternoTrabajador.setForeground(new java.awt.Color(255, 0, 0));
    add(txtAMaternoTrabajador);
 
    labelDepartamento = new JLabel("Selecciona el Departamento:");
    labelDepartamento.setBounds(220,188,180,25);
    labelDepartamento.setFont(new Font("Andale Mono", 1, 12));
    labelDepartamento.setForeground(new Color(255, 255, 255));
    add(labelDepartamento);
 
    comboDepartamento = new JComboBox();
    comboDepartamento.setBounds(220,213,220,25);
    comboDepartamento.setBackground(new java.awt.Color(224, 224, 224));
    comboDepartamento.setFont(new java.awt.Font("Andale Mono", 1, 14));
    comboDepartamento.setForeground(new java.awt.Color(255, 0, 0));
    add(comboDepartamento);
    comboDepartamento.addItem("");
    comboDepartamento.addItem("Atencion Al Cliente");
    comboDepartamento.addItem("Departamento de Logistica");
    comboDepartamento.addItem("Departamento de Gerencia");
 
    labelAntiguedad = new JLabel("Seleccione la Antiguedad:");
    labelAntiguedad.setBounds(220,248,180,25);
    labelAntiguedad.setFont(new Font("Andale Mono", 1, 12));
    labelAntiguedad.setForeground(new Color(255, 255, 255));
    add(labelAntiguedad);
 
    comboAntiguedad = new JComboBox();
    comboAntiguedad.setBounds(220,273,220,25);
    comboAntiguedad.setBackground(new java.awt.Color(224, 224, 224));
    comboAntiguedad.setFont(new java.awt.Font("Andale Mono", 1, 14));
    comboAntiguedad.setForeground(new java.awt.Color(255, 0, 0));
    add(comboAntiguedad);
    comboAntiguedad.addItem("");
    comboAntiguedad.addItem("de 1 año de servicio");
    comboAntiguedad.addItem("de 2 a 6 años de servicio");
    comboAntiguedad.addItem("de 7 años de servicio en adelante");
 
    labelResultado = new JLabel("Resultado del Calculo:");
    labelResultado.setBounds(220,307,180,25);
    labelResultado.setFont(new Font("Andale Mono", 1, 12));
    labelResultado.setForeground(new Color(255, 255, 255));
    add(labelResultado);
 
    textarea1 = new JTextArea();
    textarea1.setEditable(false);
    textarea1.setBackground(new Color(224, 224, 224));
    textarea1.setFont(new Font("Andale Mono", 1, 11));
    textarea1.setForeground(new Color(255, 0, 0));
    textarea1.setText("\n  Aqui aparecera el resultado de la operacion.");
    scrollpane1 = new JScrollPane(textarea1);
    scrollpane1.setBounds(220,333,385,90);
    add(scrollpane1);
 
    labelfooter = new JLabel("© 2019 Roberto Ruiz | Todos Los Derechos Reservados");
    labelfooter.setBounds(135,445,500,30);
    labelfooter.setFont(new java.awt.Font("Century Gothic", 1, 12));
    labelfooter.setForeground(new java.awt.Color(255, 255, 255));
    add(labelfooter);
  }
 
  public void actionPerformed(ActionEvent e){
   Container fondo = this.getContentPane(); //A partir de acá comienza el drama
 
    if (e.getSource() == miCalculo){
 
        String nombreTrabajador = txtNombreTrabajador.getText();
        String AP = txtAPaternoTrabajador.getText();
        String AM = txtAMaternoTrabajador.getText();
        String Departamento = comboDepartamento.getSelectedItem().toString();
        String Antiguedad = comboAntiguedad.getSelectedItem().toString();
 
        if(nombreTrabajador.equals("") || AP.equals("") || AM.equals("") ||
           Departamento.equals("") || Antiguedad.equals("")){
 
            JOptionPane.showMessageDialog(null,"Todos los campos son requeridos.");
 
        }else{
            if(Departamento.equals("Atencion al Cliente")){
 
                            if(Antiguedad.equals(" de 1 año de servicio")){
                                    textarea1.setText("\n   El trabajador " + nombreTrabajador + " " + AP + " " + AM +
                                                      "\n   quien labora en " + Departamento + " con un periodo" + Antiguedad +
                                                      "\n   recibe 6 dias de vacaciones.");
                            if(Antiguedad.equals("de 2 a 6 años de servicio")){
                                    textarea1.setText("\n   El trabajador " + nombreTrabajador + " " + AP + " " + AM +
                                                      "\n   quien labora en " + Departamento + " con un periodo" + Antiguedad +
                                                      "\n   recibe 14 dias de vacaciones.");
                            if(Antiguedad.equals("de 7 años de servicio en adelante")){
                                    textarea1.setText("\n   El trabajador " + nombreTrabajador + " " + AP + " " + AM +
                                                      "\n   quien labora en " + Departamento + " con un periodo" + Antiguedad +
                                                      "\n   recibe 20 dias de vacaciones.");
                         }
                     }
                 }
            }
    if(Departamento.equals("Departamento de Logistica")){
 
                            if(Antiguedad.equals(" de 1 año de servicio")){
                                    textarea1.setText("\n   El trabajador " + nombreTrabajador + " " + AP + " " + AM +
                                                      "\n   quien labora en " + Departamento + " con un periodo" + Antiguedad +
                                                      "\n   recibe 7 dias de vacaciones.");
                            if(Antiguedad.equals("de 2 a 6 años de servicio")){
                                    textarea1.setText("\n   El trabajador " + nombreTrabajador + " " + AP + " " + AM +
                                                      "\n   quien labora en " + Departamento + " con un periodo" + Antiguedad +
                                                      "\n   recibe 15 dias de vacaciones.");
                            if(Antiguedad.equals("de 7 años de servicio en adelante")){
                                    textarea1.setText("\n   El trabajador " + nombreTrabajador + " " + AP + " " + AM +
                                                      "\n   quien labora en " + Departamento + " con un periodo" + Antiguedad +
                                                      "\n   recibe 22 dias de vacaciones.");
                         }
                     }
                 }
            }
    if(Departamento.equals("Departamento de Gerencia")){
 
                            if(Antiguedad.equals(" de 1 año de servicio")){
                                    textarea1.setText("\n   El trabajador " + nombreTrabajador + " " + AP + " " + AM +
                                                      "\n   quien labora en " + Departamento + " con un periodo" + Antiguedad +
                                                      "\n   recibe 10 dias de vacaciones.");
                            if(Antiguedad.equals("de 2 a 6 años de servicio")){
                                    textarea1.setText("\n   El trabajador " + nombreTrabajador + " " + AP + " " + AM +
                                                      "\n   quien labora en " + Departamento + " con un periodo" + Antiguedad +
                                                      "\n   recibe 20 dias de vacaciones.");
                            if(Antiguedad.equals("de 7 años de servicio en adelante")){
                                    textarea1.setText("\n   El trabajador " + nombreTrabajador + " " + AP + " " + AM +
                                                      "\n   quien labora en " + Departamento + " con un periodo" + Antiguedad +
                                                      "\n   recibe 30 dias de vacaciones.");
                         }
                     }
                 }
            }
    if(e.getSource() == miRojo){
        fondo.setBackground(new Color(255,0,0));
    }
    if(e.getSource() == miNegro){
        fondo.setBackground(new Color(0,0,0));
    }
    if(e.getSource() == miMorado){
        fondo.setBackground(new Color(51,0,51));
    }
    if(e.getSource() == miAzul){
        fondo.setBackground(new Color(0,0,255));
    }
    if(e.getSource() == miVerde){
        fondo.setBackground(new Color(0,255,0));
    }
    if(e.getSource() == miNuevo){
 
        txtNombreTrabajador.setText("");
        txtAPaternoTrabajador.setText("");
        txtAMaternoTrabajador.setText("");
        comboDepartamento.setSelectedIndex(0);
        comboAntiguedad.setSelectedIndex(0);
        textarea1.setText("\n  Aqui aparecera el resultado de la operacion.");
    }
    if (e.getSource() == miSalir){
 
 
         Bienvenida ventanabienvenida = new Bienvenida();
         ventanabienvenida.setBounds(0,0,350,450);
         ventanabienvenida.setVisible(true);
         ventanabienvenida.setResizable(false);
         ventanabienvenida.setLocationRelativeTo(null);
         this.setVisible(false);
    }
    if (e.getSource() == miElCreador){
 
        JOptionPane.showMessageDialog(null, "© 2019,2022 n\"+ "Desarrollado por Roberto Ruiz (ERRM)\n" +  "errm130578@gmail.com\n");
      }
     }
  }
}
  public static void main(String args[]){
      Principal ventanaPrincipal = new Principal();
      ventanaPrincipal.setBounds(0,0,800,600);
      ventanaPrincipal.setVisible(true);
      ventanaPrincipal.setResizable(false);
      ventanaPrincipal.setLocationRelativeTo(null);
}
}



Comentarios sobre la versión: 1.0 (6)

Imágen de perfil
22 de Junio del 2022
estrellaestrellaestrellaestrellaestrella
Hola...
En la línea 328, debe corregir n\
y poner \n
Saludos.
Responder
Imágen de perfil
25 de Junio del 2022
estrellaestrellaestrellaestrellaestrella
De hecho, fíjate lo que son las cosas. Este JMenuItem es el único de esta cosa que funciona. El resto, nada de nada, mano.
Responder
Imágen de perfil
27 de Julio del 2022
estrellaestrellaestrellaestrellaestrella
Creo que deberías dividir un poco los eventos en inner clases, tal como lo he hecho para cambiar el color, prueba y verás que funciona. Deberías encapsular parte de la lógica de eventos dentro de funciones y deberías usar más el else if. Tu código es muy difícil de leer, lo que se considera una mala práctica de programación
Responder
Imágen de perfil
25 de Junio del 2022
estrellaestrellaestrellaestrellaestrella
No. Eso ya lo corregí, pana Octulio. El mismo día que lo publiqué, me dí cuenta del error y lo corregí. Pero el problema de las barras sigue. Mano, te digo que no hallo qué hacer. Hice otro código parecido y sí funciona. Pero en éste no. Pero gracias por la ayuda. Saludos desde Venezuela.
Responder
Imágen de perfil
25 de Junio del 2022
estrellaestrellaestrellaestrellaestrella
Hola Eduardo.
Te he enviado un mensaje a tu email [email protected] la vez pasada. Pudiste leerlo???
Saludos.
Responder
Imágen de perfil
27 de Julio del 2022
estrellaestrellaestrellaestrellaestrella
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Principal extends JFrame implements ActionListener{

private JMenuBar mb;
private JMenu menuOpciones, menuCalcular, menuAcercaDe, menuColorFondo;
private JMenuItem miCalculo, miRojo, miNegro, miMorado, miAzul, miVerde, miElCreador, miSalir, miNuevo;
private JLabel labelLogo, labelBienvenido, labelTitle, labelNombre, labelAPaterno, labelAMaterno, labelDepartamento, labelAntiguedad, labelResultado, labelfooter;
private JTextField txtNombreTrabajador, txtAPaternoTrabajador, txtAMaternoTrabajador;
private JComboBox comboDepartamento, comboAntiguedad;
private JScrollPane scrollpane1;
private JTextArea textarea1;
private Container fondo;
String nombreAdministrador = "", AP = "", AM = "", Departamento = "", Antiguedad = "";

public Principal() {
setLayout(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setTitle("Pantalla principal");
getContentPane().setBackground(new Color(255,0,0));
setIconImage(new ImageIcon(getClass().getResource("preferences.png")).getImage());
Bienvenida ventanaBienvenida = new Bienvenida();
//nombreAdministrador = ventanaBienvenida.texto;
//Cambio, defino fondo como variable global
fondo = this.getContentPane();
mb = new JMenuBar();
mb.setBackground(new Color(255, 0, 0));
setJMenuBar(mb);

menuOpciones = new JMenu("Opciones");
menuOpciones.setBackground(new Color(255,0,0));
menuOpciones.setFont(new Font("Andale Mono", 1, 14));
menuOpciones.setForeground(new Color(255,255,255));
mb.add(menuOpciones);

menuCalcular = new JMenu("Calcular");
menuCalcular.setBackground(new Color(255,0,0));
menuCalcular.setFont(new Font("Andale Mono", 1, 14));
menuCalcular.setForeground(new Color(255,255,255));
mb.add(menuCalcular);

menuAcercaDe = new JMenu("Acerca de");
menuAcercaDe.setBackground(new Color(255,0,0));
menuAcercaDe.setFont(new Font("Andale Mono", 1, 14));
menuAcercaDe.setForeground(new Color(255,255,255));
mb.add(menuAcercaDe);

menuColorFondo = new JMenu("Color de fondo");
menuColorFondo.setBackground(new Color(255,0,0));
menuColorFondo.setFont(new Font("Andale Mono", 1, 14));
menuColorFondo.setForeground(new Color(255,255,255));
menuOpciones.add(menuColorFondo);

miCalculo = new JMenuItem("Vacaciones");
miCalculo.setFont(new Font("Andale Mono", 1, 14));
miCalculo.setForeground(new Color(255,0,0));
menuCalcular.add(miCalculo);
miCalculo.addActionListener(this);

miRojo = new JMenuItem("Rojo");
miRojo.setFont(new Font("Andale Mono", 1, 14));
miRojo.setForeground(new Color(255,0,0));
//cambio setteamos texto para usarlo como identificador
miRojo.setText("Rojo");
menuColorFondo.add(miRojo);
// se le pasa el innerclass que implementa ActionListener
miRojo.addActionListener(new ChangeColor(fondo));

miNegro = new JMenuItem("Negro");
miNegro.setFont(new Font("Andale Mono", 1, 14));
miNegro.setForeground(new Color(255,0,0));
miNegro.setText("Negro");
menuColorFondo.add(miNegro);
miNegro.addActionListener(new ChangeColor(fondo));

miMorado = new JMenuItem("Morado");
miMorado.setFont(new Font("Andale Mono", 1, 14));
miMorado.setForeground(new Color(255,0,0));
miMorado.setText("Morado");
menuColorFondo.add(miMorado);
miMorado.addActionListener(new ChangeColor(fondo));

miAzul = new JMenuItem("Azul");
miAzul.setFont(new Font("Andale Mono", 1, 14));
miAzul.setForeground(new Color(255,0,0));
miAzul.setText("Azul");
menuColorFondo.add(miAzul);
miAzul.addActionListener(new ChangeColor(fondo));

miVerde = new JMenuItem("Verde");
miVerde.setFont(new Font("Andale Mono", 1, 14));
miVerde.setForeground(new Color(255,0,0));
miVerde.setText("Verde");
menuColorFondo.add(miVerde);
miVerde.addActionListener(new ChangeColor(fondo));

miNuevo = new JMenuItem("Nuevo");
miNuevo.setFont(new Font("Andale Mono", 1, 14));
miNuevo.setForeground(new Color(255,0,0));
menuOpciones.add(miNuevo);
miNuevo.addActionListener(this);

miElCreador = new JMenuItem("El Creador");
miElCreador.setFont(new Font("Andale Mono", 1, 14));
miElCreador.setForeground(new Color(255,0,0));
menuOpciones.add(miElCreador);
miElCreador.addActionListener(this);

miSalir = new JMenuItem("Salir");
miSalir.setFont(new Font("Andale Mono", 1, 14));
miSalir.setForeground(new Color(255, 0, 0));
menuOpciones.add(miSalir);
ImageIcon imagen = new ImageIcon("images/logo.jpeg");
labelLogo = new JLabel(imagen);
labelLogo.setBounds(5,5,250,100);
add(labelLogo);

labelBienvenido = new JLabel("Bienvenido, " + nombreAdministrador);
labelBienvenido.setBounds(280,30,300,50);
labelBienvenido.setFont(new Font("Andale Mono", 1, 32));
labelBienvenido.setForeground(new Color(255, 255, 255));
add(labelBienvenido);

labelTitle = new JLabel("DATOS DEL TRABAJADOR PARA EL CALCULO DE VACACIONES");
labelTitle.setBounds(45,140,900,25);
labelTitle.setFont(new Font("Andale Mono", 0, 14));
labelTitle.setForeground(new Color(255, 255, 255));
add(labelTitle);

labelNombre = new JLabel("Nombre completo:");
labelNombre.setBounds(25,188,180,25);
labelNombre.setFont(new Font("Andale Mono", 1, 12));
labelNombre.setForeground(new Color(255,255,255));
add(labelNombre);

txtNombreTrabajador = new JTextField();
txtNombreTrabajador.setBounds(25,213,150,25);
txtNombreTrabajador.setBackground(new java.awt.Color(224, 224, 224));
txtNombreTrabajador.setFont(new java.awt.Font("Andale Mono", 1, 14));
txtNombreTrabajador.setForeground(new java.awt.Color(255, 0, 0));
add(txtNombreTrabajador);

labelAPaterno = new JLabel("Apellido paterno:");
labelAPaterno.setBounds(25,248,180,25);
labelAPaterno.setFont(new Font("Andale Mono", 1, 12));
labelAPaterno.setForeground(new Color(255,255,255));
add(labelAPaterno);

txtAPaternoTrabajador = new JTextField();
txtAPaternoTrabajador.setBounds(25,273,150,25);
txtAPaternoTrabajador.setBackground(new java.awt.Color(224, 224, 224));
txtAPaternoTrabajador.setFont(new java.awt.Font("Andale Mono", 1, 14));
miSalir.addActionListener(this);
txtAPaternoTrabajador.setForeground(new java.awt.Color(255, 0, 0));
add(txtAPaternoTrabajador);

labelAMaterno = new JLabel("Apellido materno:");
labelAMaterno.setBounds(25,308,180,25);
labelAMaterno.setFont(new Font("Andale Mono", 1, 12));
labelAMaterno.setForeground(new Color(255,255,255));
add(labelAMaterno);

txtAMaternoTrabajador = new JTextField();
txtAMaternoTrabajador.setBounds(25,334,150,25);
txtAMaternoTrabajador.setBackground(new java.awt.Color(224, 224, 224));
txtAMaternoTrabajador.setFont(new java.awt.Font("Andale Mono", 1, 14));
txtAMaternoTrabajador.setForeground(new java.awt.Color(255, 0, 0));
add(txtAMaternoTrabajador);

labelDepartamento = new JLabel("Selecciona el Departamento:");
labelDepartamento.setBounds(220,188,180,25);
labelDepartamento.setFont(new Font("Andale Mono", 1, 12));
labelDepartamento.setForeground(new Color(255, 255, 255));
add(labelDepartamento);

comboDepartamento = new JComboBox();
comboDepartamento.setBounds(220,213,220,25);
comboDepartamento.setBackground(new java.awt.Color(224, 224, 224));
comboDepartamento.setFont(new java.awt.Font("Andale Mono", 1, 14));
comboDepartamento.setForeground(new java.awt.Color(255, 0, 0));
add(comboDepartamento);
comboDepartamento.addItem("");
comboDepartamento.addItem("Atencion Al Cliente");
comboDepartamento.addItem("Departamento de Logistica");
comboDepartamento.addItem("Departamento de Gerencia");

labelAntiguedad = new JLabel("Seleccione la Antiguedad:");
labelAntiguedad.setBounds(220,248,180,25);
labelAntiguedad.setFont(new Font("Andale Mono", 1, 12));
labelAntiguedad.setForeground(new Color(255, 255, 255));
add(labelAntiguedad);
comboAntiguedad = new JComboBox();
comboAntiguedad.setBounds(220,273,220,25);
comboAntiguedad.setBackground(new java.awt.Color(224, 224, 224));
comboAntiguedad.setFont(new java.awt.Font("Andale Mono", 1, 14));
comboAntiguedad.setForeground(new java.awt.Color(255, 0, 0));
add(comboAntiguedad);
comboAntiguedad.addItem("");
comboAntiguedad.addItem("de 1 año de servicio");
comboAntiguedad.addItem("de 2 a 6 años de servicio");
comboAntiguedad.addItem("de 7 años de servicio en adelante");

labelResultado = new JLabel("Resultado del Calculo:");
labelResultado.setBounds(220,307,180,25);
labelResultado.setFont(new Font("Andale Mono", 1, 12));
labelResultado.setForeground(new Color(255, 255, 255));
add(labelResultado);

textarea1 = new JTextArea();
textarea1.setEditable(false);
textarea1.setBackground(new Color(224, 224, 224));
textarea1.setFont(new Font("Andale Mono", 1, 11));
textarea1.setForeground(new Color(255, 0, 0));
textarea1.setText("\n Aqui aparecera el resultado de la operacion.");
scrollpane1 = new JScrollPane(textarea1);
scrollpane1.setBounds(220,333,385,90);
add(scrollpane1);

labelfooter = new JLabel("© 2019 Roberto Ruiz | Todos Los Derechos Reservados");
labelfooter.setBounds(135,445,500,30);
labelfooter.setFont(new java.awt.Font("Century Gothic", 1, 12));
labelfooter.setForeground(new java.awt.Color(255, 255, 255));
add(labelfooter);
}

public void actionPerformed(ActionEvent e){

if (e.getSource() == miCalculo){

String nombreTrabajador = txtNombreTrabajador.getText();
String AP = txtAPaternoTrabajador.getText();
String AM = txtAMaternoTrabajador.getText();
String Departamento = comboDepartamento.getSelectedItem().toString();
String Antiguedad = comboAntiguedad.getSelectedItem().toString();

if(nombreTrabajador.equals("") || AP.equals("") || AM.equals("") ||
Departamento.equals("") || Antiguedad.equals("")){

JOptionPane.showMessageDialog(null,"Todos los campos son requeridos.");

}else{
if(Departamento.equals("Atencion al Cliente")){

if(Antiguedad.equals(" de 1 año de servicio")){
textarea1.setText("\n El trabajador " + nombreTrabajador + " " + AP + " " + AM +
"\n quien labora en " + Departamento + " con un periodo" + Antiguedad +
"\n recibe 6 dias de vacaciones.");
if(Antiguedad.equals("de 2 a 6 años de servicio")){
textarea1.setText("\n El trabajador " + nombreTrabajador + " " + AP + " " + AM +
"\n quien labora en " + Departamento + " con un periodo" + Antiguedad +
"\n recibe 14 dias de vacaciones.");
if(Antiguedad.equals("de 7 años de servicio en adelante")){
textarea1.setText("\n El trabajador " + nombreTrabajador + " " + AP + " " + AM +
"\n quien labora en " + Departamento + " con un periodo" + Antiguedad +
"\n recibe 20 dias de vacaciones.");
}
}
}
}
if(Departamento.equals("Departamento de Logistica")){

if(Antiguedad.equals(" de 1 año de servicio")){
textarea1.setText("\n El trabajador " + nombreTrabajador + " " + AP + " " + AM +
"\n quien labora en " + Departamento + " con un periodo" + Antiguedad +
"\n recibe 7 dias de vacaciones.");
if(Antiguedad.equals("de 2 a 6 años de servicio")){
textarea1.setText("\n El trabajador " + nombreTrabajador + " " + AP + " " + AM +
"\n quien labora en " + Departamento + " con un periodo" + Antiguedad +
"\n recibe 15 dias de vacaciones.");
if(Antiguedad.equals("de 7 años de servicio en adelante")){
textarea1.setText("\n El trabajador " + nombreTrabajador + " " + AP + " " + AM +
"\n quien labora en " + Departamento + " con un periodo" + Antiguedad +
"\n recibe 22 dias de vacaciones.");
}
}
}
}
else if(Departamento.equals("Departamento de Gerencia")){
System.out.println(Departamento);
if(Antiguedad.equals(" de 1 año de servicio")){
textarea1.setText("\n El trabajador " + nombreTrabajador + " " + AP + " " + AM +
"\n quien labora en " + Departamento + " con un periodo" + Antiguedad +
"\n recibe 10 dias de vacaciones.");
if(Antiguedad.equals("de 2 a 6 años de servicio")){
textarea1.setText("\n El trabajador " + nombreTrabajador + " " + AP + " " + AM +
"\n quien labora en " + Departamento + " con un periodo" + Antiguedad +
"\n recibe 20 dias de vacaciones.");
if(Antiguedad.equals("de 7 años de servicio en adelante")){
textarea1.setText("\n El trabajador " + nombreTrabajador + " " + AP + " " + AM +
"\n quien labora en " + Departamento + " con un periodo" + Antiguedad +
"\n recibe 30 dias de vacaciones.");
}
}
}
}


if(e.getSource() == miNuevo){

txtNombreTrabajador.setText("");
txtAPaternoTrabajador.setText("");
txtAMaternoTrabajador.setText("");
comboDepartamento.setSelectedIndex(0);
comboAntiguedad.setSelectedIndex(0);
textarea1.setText("\n Aqui aparecera el resultado de la operacion.");
}
if (e.getSource() == miSalir){
Bienvenida ventanabienvenida = new Bienvenida();
ventanabienvenida.setBounds(0,0,350,450);
ventanabienvenida.setVisible(true);
ventanabienvenida.setResizable(false);
ventanabienvenida.setLocationRelativeTo(null);
this.setVisible(false);
}
if (e.getSource() == miElCreador){
JOptionPane.showMessageDialog(null, "© 2019,2022 \n"+ "Desarrollado por Roberto Ruiz (ERRM)\n" + "[email protected]\n");
}
}
}
}
public static void main(String args[]){
Principal ventanaPrincipal = new Principal();
ventanaPrincipal.setBounds(0,0,800,600);
ventanaPrincipal.setVisible(true);
ventanaPrincipal.setResizable(false);
ventanaPrincipal.setLocationRelativeTo(null);
}
/*
Separamos un poco la logica de cada JMenuItem
para realizar una accion concreta, lo mismo
puedes hacer con las demas acciones
*/
class ChangeColor implements ActionListener {
//se definio global la variable fondo la pasamos como arg del constructor
public ChangeColor(Container fondo){}
public void actionPerformed(ActionEvent ae) {
String cmd = ae.getActionCommand();
if(cmd.equals("Negro")){
fondo.setBackground(new Color(0,0,0));
}else if(cmd.equals("Rojo")){
fondo.setBackground(new Color(255,0,0));
}else if(cmd.equals("Verde")){
fondo.setBackground(new Color(0,255,0));
}else if(cmd.equals("Morado")){
fondo.setBackground(new Color(51,0,51));
}else if(cmd.equals("Azul")){
fondo.setBackground(new Color(0,0,255));
}
}
}
}
Responder

Comentar la versión: 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s7246