Seguidores

MIS WEBS



Mostrando entradas con la etiqueta JSlider. Mostrar todas las entradas
Mostrando entradas con la etiqueta JSlider. Mostrar todas las entradas

sábado, 3 de marzo de 2018

Dar tamaño a un texto con JSlaider java

JSlaider


Es un control deslizante que podemos colocar en nuestro marco para dale funcionalidad posteriormente. Normalmente lo podemos ver en el control del volumen, pero le podemos dar otras funciones.

Los métodos que yo he necesitado han sido los siguiente:

  • setPaintTicks(boolean)  Establece  líneas de división
  • setMajorTicksSpacing(int) : Contabiliza cada cuanto van las líneas de separación de las marcas más grandes
  • setMinorTicksSpacing(int): Contabiliza cada cuanto van las líneas de separación pequeñas.
  • setPaintLabels(boolean)  Establece las etiquetas numéricas.
  • addChangeListener(ChangeListener): Pone a la escucha el JSlider
  • setPreferredSize(new Dimension(ancho, alto) : Establece el tamaño de nuestro JSlider.
  • getValue () Obtener el valor actual que marca JSlider.


Ahora vamos a dar funcionalidad a un JSlaider, para ello crearemos un marco con dos laminas en la parte central pondremos una etiqueta con un texto y en la superior nuestra barra.  La barra tendrá marcas de separación pequeñas y grandes, números comprendidos entre 5 y 100. Y cuando la deslicemos aumentara o disminuirá el texto.



ESTE ES EL CÓDIGO QUE HE UTILIZADO:

public class practica3 {
       public static void main(String[] arg) {
             MarcO marcO22= new MarcO();
             marcO22.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
             marcO22.setVisible(true);
       }
}
class MarcO extends JFrame{      
       public MarcO() {
             setBounds(300,100,650,450);
             Lamina lamina000 = new Lamina();
             add(lamina000);
       }
}
class Lamina extends JPanel{
       public Lamina() {
             setLayout(new BorderLayout());
            
             JP_texto = new JPanel();
             Texto = new JLabel("TEXTO");
             Texto.setFont(new Font("Arial Black",Font.PLAIN,20));
             JP_texto.add(Texto);
             add(JP_texto, BorderLayout.CENTER);
            
            
             JP_barra = new JPanel();
             Barra_Control = new JSlider(0,5,100,20);
             Barra_Control.setPaintTicks(true);
             Barra_Control.setPaintLabels(true);
             Barra_Control.setMinorTickSpacing(5);
             Barra_Control.setMajorTickSpacing(10);
             Barra_Control.setFont(new Font ("Arial",Font.BOLD,10));
             //Le damos el tamaño que nos gusta
             Barra_Control.setPreferredSize(new Dimension(350, 80));
             Barra_Control.addChangeListener(new Evnto_Barra_control());
             JP_barra.add(Barra_Control);
            
             add(JP_barra,BorderLayout.NORTH);
       }
       private class Evnto_Barra_control implements ChangeListener{
             public void stateChanged(ChangeEvent e) {     
                    Texto.setFont(new Font("Arial Black",Font.PLAIN,Barra_Control.getValue()));
             }     
       }
       private JLabel Texto;
       private JSlider Barra_Control;
       private JPanel JP_barra,JP_texto;
}




Si lo que deseamos es que al desplazarnos por la barra un texto nos indique donde estamos con el texto de la etiqueta:

private class Evnto_Barra_control implements ChangeListener{
             public void stateChanged(ChangeEvent e) {     
       Texto.setText("ESTO MARCA TU BARRA " + Barra_Control.getValue());
             }
       }



jueves, 1 de marzo de 2018

JSlider java


Es un control deslizante que podemos colocar en nuestro marco para dale funcionalidad posteriormente.

setPaintTicks(boolean)  Establece  líneas de división
setMajorTicksSpacing(int) : Contabiliza cada cuanto van las líneas de separación de las marcas mas grandes
setMinorTicksSpacing(int): Contabiliza cada cuanto van las líneas de separación pequeñas.

setPaintLabels(boolean)  Establece las etiquetas numéricas.



En el siguiente ejemplo vamos a poner dos JSlider uno en la parte superior del marco y el otro en la parte inferior. Ambos con líneas de división, números y líneas de división grandes.







import java.awt.*;
import javax.swing.*;

public class practica3 {

       public static void main (String []arg) {
             Marco__1 marco1111 = new Marco__1();
             marco1111.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
             marco1111.setVisible(true);
       }
      
}

       class Marco__1 extends JFrame{
            
             public Marco__1(){
                   
                    setBounds(300,100,650,450);
                    setLayout(new BorderLayout());
                    panel_vertical p_v = new panel_vertical();
                    panel_Horizontal P_H = new panel_Horizontal();
                    add(p_v, BorderLayout.WEST);
                    add(P_H,BorderLayout.SOUTH);
                   
             }
       }
      
       class panel_vertical extends JPanel{
            
             public panel_vertical() {
                   
                    JSlider obj_Slider = new JSlider(SwingConstants.VERTICAL,0,100,20);
                    obj_Slider.setPaintTicks(true);
                    obj_Slider.setPaintLabels(true);
                    obj_Slider.setMajorTickSpacing(20);
                    obj_Slider.setMinorTickSpacing(1);
                    //establece el tamaño del Slider
                    obj_Slider.setPreferredSize(new Dimension(50, 400));
                    add(obj_Slider);
            
                                  }
       }

       class panel_Horizontal extends JPanel{
            
             public panel_Horizontal() {
                    JPanel panel_Horizontal = new JPanel();
                    JSlider obj_Slider2 = new JSlider(SwingConstants.HORIZONTAL,0,100,50);
                    obj_Slider2.setPaintLabels(true);
                    obj_Slider2.setPaintTicks(true);
                    obj_Slider2.setMajorTickSpacing(20);
                    obj_Slider2.setMinorTickSpacing(2);
                    obj_Slider2.setPreferredSize(new Dimension(500, 45));
                    add(obj_Slider2);

                   
             }
       }

Buscar este blog

Sandisk y Western Digital