Bonjour,
j'ai créé une Jframe sur laquel j'ai déposé un carlayout puis j'ai empilé 3 jframe ,sur chaque JPanel j'ai inséré un absolute layoute pour pouvoir placer les bouttons. J'utilise set visible true ou false pour naviguer entre les Panels. mais ca ne fonctionne pas du tous. Je suis débutant et je ne trouve pas la solution je ne voie pas ou est l'erreur merci de votre aide .
voici le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
import java.awt.EventQueue;
 
import javax.swing.JFrame;
import java.awt.CardLayout;
import javax.swing.JPanel;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
 
 
public class Multifenetre {
 
	private JFrame frame;
	private JPanel panel;
	private JPanel panel_1;
	private JPanel panel_2;
	/**
         * Launch the application.
         */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					Multifenetre window = new Multifenetre();
					window.frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}
 
	/**
         * Create the application.
         */
	public Multifenetre() {
		initialize();
	}
 
	/**
         * Initialize the contents of the frame.
         */
	private void initialize() {
		frame = new JFrame();
		frame.setBounds(100, 100, 450, 300);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.getContentPane().setLayout(new CardLayout(0, 0));
 
		final JPanel panel = new JPanel();
		frame.getContentPane().add(panel, "name_4725615196578");
		panel.setLayout(null);
		panel.setVisible(true);
 
		JButton btnNewButton = new JButton("New button");
		btnNewButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				panel_1.setVisible(true);
				panel.setVisible(false);
			}
		});
		btnNewButton.setBounds(215, 147, 122, 45);
		panel.add(btnNewButton);
		panel.setVisible(true);
 
 
		final JPanel panel_1 = new JPanel();
		frame.getContentPane().add(panel_1, "name_4743900489038");
		panel_1.setLayout(null);
		panel_1.setVisible(false);
 
 
		JButton btnNewButton_1 = new JButton("New button");
		btnNewButton_1.setBounds(38, 181, 110, 39);
		panel_1.add(btnNewButton_1);
 
		JButton btnNewButton_2 = new JButton("New button");
		btnNewButton_2.setBounds(284, 189, 102, 31);
		panel_1.add(btnNewButton_2);
 
		final JPanel panel_2 = new JPanel();
		frame.getContentPane().add(panel_2, "name_4753208902250");
		panel_2.setLayout(null);
		panel_2.setVisible(false);
 
		JButton btnNewButton_3 = new JButton("New button");
		btnNewButton_3.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
 
			}
		});
		btnNewButton_3.setBounds(37, 167, 107, 34);
		panel_2.add(btnNewButton_3);
	}
}
voici le message d'erreur:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at Multifenetre$2.actionPerformed(Multifenetre.java:57)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)

je ne comprend plus rien
Merci encore pour votre aide
Greg