import java.awt.*; import java.awt.event.*; import javax.swing.*; public class JFrameScroll extends JPanel { JLabel label; public JFrameScroll( ) { super(true); label=new JLabel( ); setLayout(new BorderLayout( )); // Créer les barres de défilements horizontale et verticale JScrollBar bar_h=new JScrollBar(JScrollBar.HORIZONTAL, 30, 20, 0, 300); JScrollBar bar_v=new JScrollBar(JScrollBar.VERTICAL, 30, 40, 0, 300); // Définir l'unité et le bloque d'incrémentation bar_h.setUnitIncrement(2); bar_h.setBlockIncrement(1); // Evénement sur l'ajustement des barres bar_h.addAdjustmentListener(new DefilementEvents( )); bar_v.addAdjustmentListener(new DefilementEvents( )); // Intégrer les barres horizontale et verticale add(bar_h, BorderLayout.SOUTH); add(bar_v, BorderLayout.EAST); // Ajouter le label add(label, BorderLayout.CENTER); } class DefilementEvents implements AdjustmentListener { public void adjustmentValueChanged(AdjustmentEvent e) { label.setText("La nouvelle valeur de la barre: " + e.getValue( ) + " "+e.getSource()); repaint( ); } } public static void main(String s[]) { JFrame frame = new JFrame("Exemple d'Ascenseur ou barre de défilement"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setContentPane(new JFrameScroll( )); frame.setSize(200,200); frame.setVisible(true); } }