| 12
 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
 
 |  
import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
import javax.swing.tree.*; 
import javax.swing.event.*; 
 
/* PROGRAMME PAGE 846 DU LIVRE */ 
 
public class JTreeEvents extends JApplet implements ActionListener 
{ 
/** 
* 
*/ 
private static final long serialVersionUID = 1L; 
JTree tree; 
JTextField jtf; 
CardLayout Carte; 
JPanel panneauDroite; 
static JTextField nom,prenom,datedenaissance,loisirs,langagesinfos,age; 
static JButton ok,nouveau; 
static JButton nouvellephase2; 
DefaultMutableTreeNode top,a; 
 
public void init() 
{ 
 
nouveau = new JButton("Nouveau"); 
nouveau.addActionListener(this); 
 
ok = new JButton("OK"); 
ok.addActionListener(this); 
 
nouvellephase2 = new JButton("Nouvelle Phase 2"); 
nouvellephase2.addActionListener(this); 
 
nom = new JTextField(10); 
nom.addActionListener(this); 
 
prenom = new JTextField(10); 
prenom.addActionListener(this); 
 
datedenaissance = new JTextField(10); 
datedenaissance.addActionListener(this); 
 
loisirs = new JTextField(10); 
loisirs.addActionListener(this); 
 
langagesinfos = new JTextField(10); 
langagesinfos.addActionListener(this); 
 
age = new JTextField(10); 
age.addActionListener(this); 
 
Container contentPane = this.getContentPane(); 
 
JPanel panneau = new JPanel(new BorderLayout()); 
panneauDroite = new JPanel(); 
 
JPanel Phase1 = new JPanel(); 
Phase1.add(new JLabel("Nom")); 
Phase1.add(nom); 
Phase1.add(new JLabel("Prenom")); 
Phase1.add(prenom); 
Phase1.add(new JLabel("Date de Naissance")); 
Phase1.add(datedenaissance); 
Phase1.add(ok); 
Phase1.add(nouveau); 
 
JPanel Phase2 = new JPanel(); 
Phase2.add(new JLabel("Loisirs")); 
Phase2.add(loisirs); 
Phase2.add(new JLabel("Langages infos")); 
Phase2.add(langagesinfos); 
Phase2.add(new JLabel("Age")); 
Phase2.add(age); 
Phase2.add(nouvellephase2); 
 
 
Carte = new CardLayout(); 
 
panneauDroite.setLayout(Carte); 
panneauDroite.add("Phase1",Phase1); 
panneauDroite.add("Phase2",Phase2); 
 
contentPane.add(panneau); 
JPanel panneauTree = new JPanel(new BorderLayout()); 
 
JSplitPane unSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, panneauTree,panneauDroite); 
panneau.add(unSplitPane); 
 
top = new DefaultMutableTreeNode("Options"); 
 
a = new DefaultMutableTreeNode("A"); 
top.add(a); 
 
DefaultMutableTreeNode a1 = new DefaultMutableTreeNode("A1"); 
a.add(a1); 
 
DefaultMutableTreeNode a2 = new DefaultMutableTreeNode("A2"); 
a.add(a2); 
 
DefaultMutableTreeNode b = new DefaultMutableTreeNode("B"); 
top.add(b); 
 
DefaultMutableTreeNode b1 = new DefaultMutableTreeNode("B1"); 
b.add(b1); 
 
DefaultMutableTreeNode b2 = new DefaultMutableTreeNode("B2"); 
b.add(b2); 
 
tree = new JTree(top); 
 
int v = ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED; 
int h = ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED; 
JScrollPane jsp = new JScrollPane(tree,v,h); 
 
panneauTree.add(jsp, BorderLayout.CENTER); 
 
jtf = new JTextField("",20); 
panneauTree.add(jtf,BorderLayout.SOUTH); 
 
tree.addMouseListener(new MouseAdapter() 
{ 
public void mouseClicked(MouseEvent me) 
{ 
doMouseClicked(me); 
} 
}); 
} 
 
void doMouseClicked(MouseEvent me) 
{ 
TreePath tp = tree.getPathForLocation(me.getX(), me.getY()); 
 
if (tp != null) 
{ 
 
Object[] mytp = tp.getPath(); 
 
if (mytp.length >= 3) 
{ 
jtf.setText(mytp[2].toString()); 
Carte.show(panneauDroite,"Phase2"); 
} 
else if (mytp.length == 2) 
{ 
jtf.setText(mytp[1].toString()); 
Carte.show(panneauDroite,"Phase1"); 
} 
} 
 
} 
 
public void actionPerformed(ActionEvent evt) 
{ 
if(evt.getSource() == nouveau) 
{ 
 
tree = new JTree(top); 
DefaultMutableTreeNode coucou = new DefaultMutableTreeNode("Nouveau"); 
top.add(coucou); 
// VOila ou est le probleme 
// 
//Comment faire?? 
JPanel Phase1 = new JPanel(); 
Phase1.add(new JLabel("Nom")); 
Phase1.add(nom); 
Phase1.add(new JLabel("Prenom")); 
Phase1.add(prenom); 
Phase1.add(new JLabel("Date de Naissance")); 
Phase1.add(datedenaissance); 
Phase1.add(ok); 
Phase1.add(nouveau); 
panneauDroite.add("Phase1",Phase1); 
DefaultMutableTreeNode salut = new DefaultMutableTreeNode("New"); 
coucou.add(salut); 
SwingUtilities.updateComponentTreeUI(this); 
 
 
} 
 
if(evt.getSource() == nouvellephase2) 
{ 
DefaultMutableTreeNode a3 = new DefaultMutableTreeNode("A2"); 
a.add(a3); 
} 
} 
} | 
Partager