Bonsoir tous le monde
Je débute en java et je veux créer une petit application qui dessin un rectangle et un cercle selon le choix de l’utilisateur a travers 2 boutons
Mon problème est que je la fenêtre ne se met pas a jours en temps réel il faut que je la redimensionne ou bien la réduire et en suite l’agrandir j’ai cherché sur le net j’ai trouvé la méthode repain qui faisait la mise a jours mais rien ne change
voici des captures d'ecran qui montre mon pb
et apres que je la reduit :
voici mon code:
classe paneau
classe dessin
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 import java.awt.Color; import java.awt.Graphics; import javax.swing.JPanel; public class Paneau extends JPanel { private int etat = 0; public void paintComponent(Graphics g) { super.paintComponents(g); if(etat==1) g.drawOval(100, 50, 120, 60); if (etat==2) g.drawRect(100, 50, 120, 60); } public void Rectangle() { etat=2; repaint(); } public void Cercle() { etat=1; repaint(); } }
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 import java.awt.BasicStroke; import java.awt.BorderLayout; import java.awt.Color; import java.awt.FlowLayout; import java.awt.Graphics; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JPanel; import javax.swing.JFrame; public class dessin { private Paneau pan1; private JButton b1,b2; public dessin() { JFrame fen=new JFrame(); pan1 = new Paneau(); pan2=new JPanel(); fen.setTitle("Dessin"); fen.setSize(400, 400); fen.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); fen.setLocationRelativeTo(null); fen.setVisible(true); fen.setBackground(Color.BLACK); pan1.setBackground(Color.YELLOW); b1=new JButton("Rectangle"); b1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { pan1.Rectangle(); pan1.setBackground(Color.cyan); pan1.repaint(); } }); b2=new JButton("Cercle"); b2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { pan1.Cercle(); pan1.setBackground(Color.cyan); pan1.repaint(); } }); fen.add(b1,BorderLayout.NORTH); fen.add(b2,BorderLayout.SOUTH); fen.getContentPane().add(pan1); pan1.repaint(); } public static void main(String[] args) { dessin c=new dessin(); } }
Partager