import java.awt.*; import javax.swing.*; import javax.swing.event.*; public class IHM extends JFrame implements MyEventListener { private JPanel contentPane; private JTextArea texte = new JTextArea(); private JPanel panel = new JPanel(); private JSlider slider = new JSlider(); private MyComponent component; public IHM(String name) { contentPane = (JPanel) this.getContentPane(); contentPane.setLayout(new BorderLayout()); contentPane.add(texte, BorderLayout.CENTER); contentPane.add(panel, BorderLayout.NORTH); panel.add(slider, null); slider.setValue(0); slider.addChangeListener(new ChangeListener() { public void stateChanged(ChangeEvent e) { component.setValue(slider.getValue()); } }); component = new MyComponent(name); // On enregistre le veilleur au composant component.addStockListener(this); this.setSize(new Dimension(309, 94)); this.setTitle("IHM Event"); setVisible(true); } // On définit le traitement à faire en cas de changement de valeur public void onValueChange(MyEvent e) { texte.setText(e.toString()); } public static void main(String args[]) { new IHM("Component name"); } }