Ejemplo JSlider – Java
package ejemplojslider;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSlider;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
public class EjemploJSlider extends JFrame implements ActionListener {
JLabel etiqueta;
JSlider js;
public EjemploJSlider() {
setVisible(true);
setBounds(0, 0, 600, 600);
setLayout(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
etiqueta = new JLabel(«Hola»);
// clase FONT
// setFont(…..)
etiqueta.setFont(new Font(«Serif», Font.PLAIN, 15));
js = new JSlider(JSlider.HORIZONTAL, 1, 50, 15);
etiqueta.setBounds(10, 10, 300, 60);
js.setBounds(10, 110, 200, 60);
add(etiqueta);
add(js);
// Después de añadir el slider a la ventana
js.setMajorTickSpacing(10);
js.setMinorTickSpacing(1);
js.setPaintTicks(true);
js.setPaintLabels(true);
// esto es lo que hace que se cambie la letra
// dentro de addChangeListener
// – nótese que ahora no es addActionListener, como en los botones –
// creamos un new ChangeListener… el resto se autocompleta
js.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent ce) {
// el valor en tiempo real del indicador del slider,
// convertido a entero,
// pasado como parametro de Font – tamaño de fuente,
// y ésta pasada como parámetro de etiqueta
etiqueta.setFont(new Font(«Serif», Font.PLAIN, (int)((JSlider)ce.getSource()).getValue()));
}
} );
}
public static void main(String[] args) {
EjemploJSlider ejsl = new EjemploJSlider();
}
@Override
public void actionPerformed(ActionEvent ae) {
}
}