Java - Errores en la ejecución

 
Vista:
Imágen de perfil de José Manuel
Val: 12
Ha aumentado su posición en 7 puestos en Java (en relación al último mes)
Gráfica de Java

Errores en la ejecución

Publicado por José Manuel (6 intervenciones) el 30/06/2019 09:41:46
Buenos días,

Sigo haciendo el curso de Java desde 0

En esta ocasión he hecho el capítulo 37, y a pesar de que según yo veo tengo el código igual que el ejemplo, me dar errores en la ejecución

La compilación la pasa sin errores

Os dejo el código, la imagen con los errores y el enlace del curso

Si alguien me puede señalar cual ha sido mi error, le estaría muy agradecido

Un saludo

EL CÓDIGO:

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
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
 
public class Formulario extends JFrame implements ActionListener{
 
  private JMenuBar menubar;
  private JMenu menu1, menu2, menu3;
  private JMenuItem menuitem1, menuitem2, menuitem3, menuitem4;
 
  public Formulario(){
   setLayout(null);
   menubar = new JMenuBar();
   setJMenuBar(menubar);
 
   menu1 = new JMenu("Opciones");
   menubar.add(menu1);
 
   menu2 = new JMenu("Tamaño de la ventana");
   menu1.add(menu2);
 
   menu3 = new JMenu("Color de fondo");
   menu1.add(menu3);
 
   menuitem1 = new JMenuItem("300x200");
   menu2.add(menuitem1);
   menuitem1.addActionListener(this);
 
   menuitem2 = new JMenuItem("640x480");
   menu2.add(menuitem2);
   menuitem1.addActionListener(this);
 
   menuitem2 = new JMenuItem("Rojo");
   menu3.add(menuitem3);
   menuitem3.addActionListener(this);
 
   menuitem4 = new JMenuItem("Verde");
   menu3.add(menuitem4);
   menuitem4.addActionListener(this);
  }
 
   public void actionPerformed(ActionEvent e){
     if(e.getSource() == menuitem1){
       setSize(300,200);
     }
     if(e.getSource() == menuitem2){
       setSize(640,480);
     }
     if(e.getSource() == menuitem3){
       getContentPane().setBackground(new Color(255,0,0));
     }
     if(e.getSource() == menuitem4){
       getContentPane().setBackground(new Color(0,255,0));
     }
  }
 
  public static void main(String arg[]){
    Formulario formulario1 = new Formulario();
    formulario1.setBounds(0,0,300,200);
    formulario1.setVisible(true);
    formulario1.setResizable(false);
    formulario1.setLocationRelativeTo(null);
  }
}

EL ERROR:

https://ibb.co/XCFm58S

EL CURSO:

https://youtu.be/WsPQ7Z_8m9g
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 Billy Joel
Val: 2.665
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Errores en la ejecución

Publicado por Billy Joel (876 intervenciones) el 30/06/2019 21:30:15
En la línea 35 tienes esto:
1
2
3
menuitem2 = new JMenuItem("Rojo");
menu3.add(menuitem3);
menuitem3.addActionListener(this);

Modificalo por esto:
1
2
3
menuitem3 = new JMenuItem("Rojo");
menu3.add(menuitem3);
menuitem3.addActionListener(this);

El error que tenías era porque el objeto menu3 no estaba inicializado.

Saludos,
Billy Joel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
3
Comentar