SlideShare una empresa de Scribd logo
2
Lo más leído
3
Lo más leído
EJERCICIO GUIADO. JAVA: SPINNER 
Introducción a los JSpinner 
La clase JSpinner permite crear cuadros como el siguiente: 
Son elementos muy comunes en los programas. A través de los dos botones triangulares se 
puede hacer que el valor del cuadro aumente o disminuya. También se puede escribir 
directamente un valor dentro del cuadro. 
Ejercicio guiado 
1. Crea un nuevo proyecto. 
2. Añade en él un JSpinner. Su nombre será spiValor. 
3. Añade una etiqueta con borde. Su nombre será etiValor. 
4. La ventana tendrá el siguiente aspecto: 
5. Interesa que cuando cambie el JSpinner (ya sea porque se pulsaron los botones 
triangulares o porque se escribió dentro) aparezca el valor correspondiente dentro de 
la etiqueta. Para ello, tendrá que programar el evento stateChanged del JSpinner. 
En el evento stateChanged introduzca el siguiente código: 
etiValor.setText("El valor es: "+spiValor.getValue().toString());
6. Como puedes observar, lo que hace el programa es recoger el valor que tiene el 
JSpinner a través del método getValue y luego se lo asigna a la etiqueta con el 
clásico setText. (Es muy parecido a los deslizadores) 
Debes tener en cuenta que el valor devuelto no es un número ni una cadena, así que 
en el ejemplo se ha usado el método toString() para convertirlo a una cadena. 
7. Prueba el programa y observa su funcionamiento: 
El usuario modifica el 
valor del JSpinner... 
Y aquí aparece el valor 
seleccionado. 
8. Observa como los valores del JSpinner aumentan o disminuyen en 1. Por otro lado, 
no parece haber un límite para los valores del JSpinner. 
La pregunta ahora es: ¿Se puede modificar el contenido del JSpinner de forma que 
tenga unos valores concretos? La respuesta es sí. Veamos como hacerlo. 
9. Entra dentro del código del programa y, dentro del constructor, añade este código 
debajo de initComponents: 
SpinnerNumberModel nm = new SpinnerNumberModel(); 
nm.setMaximum(10); 
nm.setMinimum(0); 
spiValor.setModel(nm); 
10. Este código hace lo siguiente: 
a. El JSpinner, al igual que los JList y los JComboBox, es un objeto que contiene 
otro objeto “modelo”, y es el objeto “modelo” el que contiene los números 
visualizados en el JSpinner. 
b. En el código anterior se crea un “modelo” para el JSpinner, se definen los 
valores que contendrá, y luego se asigna al JSpinner. Estudiemos las líneas 
del código. 
c. La primera línea crea un “modelo” llamado nm. Los modelos de los JSpinner 
son del tipo SpinnerNumberModel. Necesitarás incluir el import 
correspondiente (atento a la bombilla)
d. En la segunda línea se define como valor máximo del modelo el 10, a través 
de un método llamado setMaximum. 
e. En la tercera línea se define como valor mínimo del modelo el 0, a través de 
un método llamado setMinimum. 
f. Finalmente se asigna el modelo creado al JSpinner. 
g. Este código, en definitiva, hará que el JSpinner muestre los valores 
comprendidos entre 0 y 10. 
11. Prueba el programa y observa los valores que puede tomar el JSpinner. 
Ahora los valores están 
comprendidos entre 0 y 
10 
12. Vamos a añadir otra mejora. Cambie el código del constructor por este otro. (Observa 
que solo se ha añadido una línea): 
SpinnerNumberModel nm = new SpinnerNumberModel(); 
nm.setMaximum(10); 
nm.setMinimum(0); 
nm.setStepSize(2); 
spiValor.setModel(nm); 
13. La línea añadida es: 
nm.setStepSize(2); 
Esta línea usa un método del modelo del JSpinner que permite definir el valor de 
cambio del JSPinner. Dicho de otra forma, esta línea hace que los valores del 
JSpinner salten de 2 en 2. 
14. Ejecuta el programa de nuevo y observa como cambian los valores del JSpinner. 
15. El modelo del JSpinner tiene también un método llamado setValue que permite 
asignar un valor inicial al modelo. Pruebe a usar este método para hacer que el 
JSpinner muestre desde el principio el valor 4.
CONCLUSIÓN 
Los JSpinners son objetos que permiten seleccionar un número, ya sea escribiéndolo 
en el recuadro, o bien a través de dos botones triangulares que permiten aumentar o 
disminuir el valor actual. 
Los JSpinners son objetos con “modelo”. Es decir, este objeto contiene a su vez otro 
objeto “modelo” que es el que realmente contiene los datos. 
Datos  Modelo  JSpinner 
Para definir el contenido del JSpinner es necesario crear un modelo del tipo 
SpinnerNumberModel. Se le asigna al modelo los números deseados, y finalmente se 
une el modelo con el JSpinner. 
El objeto modelo del JSpinner permite definir el valor mínimo y el valor máximo, así 
como el intervalo de aumento de los valores.

Más contenido relacionado

PPTX
Modelo cascada
PDF
Preguntas sobre metodología RUP
PPTX
tipos de requisitos
PDF
6 Curso de POO en Java - clases y objetos
DOCX
Ciclos repetitivos
DOCX
Cuestionario uml y objetos zuli
DOCX
Diagrama de caso de uso.docx
PDF
Metodologías de Desarrollo de Software Tradicionales y Emergentes
Modelo cascada
Preguntas sobre metodología RUP
tipos de requisitos
6 Curso de POO en Java - clases y objetos
Ciclos repetitivos
Cuestionario uml y objetos zuli
Diagrama de caso de uso.docx
Metodologías de Desarrollo de Software Tradicionales y Emergentes

La actualidad más candente (20)

PPTX
Introducción a Javascript: Formularios
PPT
Diagramas UML
PPTX
Caracteristicas Microsoft SQL Server
PPTX
Ingeniería de requisitos
DOC
Modelo componentes
PPT
Programación Orientada a Objetos.ppt
PPTX
Programacion estructurada
PPTX
Fundamentos de Programación - Unidad III Control de Flujo
PPTX
Análisis léxico y análisis sintáctico
PDF
Casos de uso
PPTX
Paradigmas de la ingeniería de software
PPTX
Unidad 2 ensamblador
PDF
PRESENTACIÓN RUP
PPT
Analisis Lexico
PPTX
Tópicos avanzados de programación eventos
PPTX
Entorno de desarrollo de visual basic 6.0
PDF
Cuadro Comparativo de Algoritmos
PDF
Introduccion a ms excel
PPT
diagrama de casos de uso del negocio y del sistema
PDF
Tema 11 expresiones regulares en java por gio
Introducción a Javascript: Formularios
Diagramas UML
Caracteristicas Microsoft SQL Server
Ingeniería de requisitos
Modelo componentes
Programación Orientada a Objetos.ppt
Programacion estructurada
Fundamentos de Programación - Unidad III Control de Flujo
Análisis léxico y análisis sintáctico
Casos de uso
Paradigmas de la ingeniería de software
Unidad 2 ensamblador
PRESENTACIÓN RUP
Analisis Lexico
Tópicos avanzados de programación eventos
Entorno de desarrollo de visual basic 6.0
Cuadro Comparativo de Algoritmos
Introduccion a ms excel
diagrama de casos de uso del negocio y del sistema
Tema 11 expresiones regulares en java por gio
Publicidad

Similar a 09 guiados spinner Java (20)

DOCX
Informe#15
PDF
DOCX
Informe#13
DOCX
Informe#14
PDF
DOCX
Informe#6
DOCX
Informe#12
DOCX
Informe#10
DOCX
Unid 3 tema 2
PDF
Practicasbasicasparaandroid 120112060404-phpapp02
PDF
Computación 2 sept 2012
PDF
Informe karen jacome
PDF
Programas e informes Programación
DOCX
Und 2 tema 4
DOCX
Unid 2 tema 3
DOCX
Informe#9
DOCX
Informe#2
DOCX
Segundo punto taller macros
DOCX
Manual en equipo
DOCX
Manual en equipo
Informe#15
Informe#13
Informe#14
Informe#6
Informe#12
Informe#10
Unid 3 tema 2
Practicasbasicasparaandroid 120112060404-phpapp02
Computación 2 sept 2012
Informe karen jacome
Programas e informes Programación
Und 2 tema 4
Unid 2 tema 3
Informe#9
Informe#2
Segundo punto taller macros
Manual en equipo
Manual en equipo
Publicidad

Más de Jomar Burgos Palacios (20)

PPTX
Presentacion proyecto - Física
DOC
Avance de proyecto - Física
DOCX
Corriente eléctrica - Física
DOCX
Aplicaciones de ecuaciones de bernoulli
PDF
Enunciado java - Ejercicio Básico
PDF
4. java poo joptionpane - Lenguaje de Programación JAVA - POO 2018.
PDF
3. java poo operadores logicos - Lenguaje de Programación JAVA - POO 2018
PDF
2. java poo - Lenguaje de Programación JAVA - POO 2018.
PDF
1. java poo - Lenguaje de Programación JAVA - POO 2018.
PDF
Primer plano – basico en m visio
PPTX
Excel FORMATOS CONDICIONALES
PPTX
Formatos en excel
PDF
TAUTOLOGÍA .
PDF
ALGEBRA . CIRCUITOS LOGICOS
PDF
L Ó G I C A . MATEMÁTICA
PDF
VALIDEZ DE UNA INFERENCIA: MÉTODO ABREVIADO
PDF
Solucionario algebra de baldor
PDF
Gran Libro - Baldor [Matematica Pura]
PDF
Gestión de operaciones obtener ruta critica
PDF
Insertar editarborrar registros sql_server_tutorial 2015
Presentacion proyecto - Física
Avance de proyecto - Física
Corriente eléctrica - Física
Aplicaciones de ecuaciones de bernoulli
Enunciado java - Ejercicio Básico
4. java poo joptionpane - Lenguaje de Programación JAVA - POO 2018.
3. java poo operadores logicos - Lenguaje de Programación JAVA - POO 2018
2. java poo - Lenguaje de Programación JAVA - POO 2018.
1. java poo - Lenguaje de Programación JAVA - POO 2018.
Primer plano – basico en m visio
Excel FORMATOS CONDICIONALES
Formatos en excel
TAUTOLOGÍA .
ALGEBRA . CIRCUITOS LOGICOS
L Ó G I C A . MATEMÁTICA
VALIDEZ DE UNA INFERENCIA: MÉTODO ABREVIADO
Solucionario algebra de baldor
Gran Libro - Baldor [Matematica Pura]
Gestión de operaciones obtener ruta critica
Insertar editarborrar registros sql_server_tutorial 2015

Último (20)

PDF
Habitos de Ricos - Juan Diego Gomez Ccesa007.pdf
PDF
COMUNICACION EFECTIVA PARA LA EDUCACION .pdf
PDF
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
DOCX
V UNIDAD - SEGUNDO GRADO. del mes de agosto
PDF
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
PDF
DI, TEA, TDAH.pdf guía se secuencias didacticas
PDF
ciencias-1.pdf libro cuarto basico niños
PDF
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
PDF
Metodologías Activas con herramientas IAG
DOCX
UNIDAD DE APRENDIZAJE 5 AGOSTO tradiciones
PDF
PFB-MANUAL-PRUEBA-FUNCIONES-BASICAS-pdf.pdf
PPTX
caso clínico iam clinica y semiología l3.pptx
PPT
Cosacos y hombres del Este en el Heer.ppt
PDF
biología es un libro sobre casi todo el tema de biología
PDF
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
PDF
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
PDF
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
PDF
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
DOCX
V UNIDAD - PRIMER GRADO. del mes de agosto
PDF
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe
Habitos de Ricos - Juan Diego Gomez Ccesa007.pdf
COMUNICACION EFECTIVA PARA LA EDUCACION .pdf
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
V UNIDAD - SEGUNDO GRADO. del mes de agosto
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
DI, TEA, TDAH.pdf guía se secuencias didacticas
ciencias-1.pdf libro cuarto basico niños
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
Metodologías Activas con herramientas IAG
UNIDAD DE APRENDIZAJE 5 AGOSTO tradiciones
PFB-MANUAL-PRUEBA-FUNCIONES-BASICAS-pdf.pdf
caso clínico iam clinica y semiología l3.pptx
Cosacos y hombres del Este en el Heer.ppt
biología es un libro sobre casi todo el tema de biología
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
Didactica de la Investigacion Educativa SUE Ccesa007.pdf
Unidad de Aprendizaje 5 de Matematica 1ro Secundaria Ccesa007.pdf
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
V UNIDAD - PRIMER GRADO. del mes de agosto
IDH_Guatemala_2.pdfnjjjkeioooe ,l dkdldp ekooe

09 guiados spinner Java

  • 1. EJERCICIO GUIADO. JAVA: SPINNER Introducción a los JSpinner La clase JSpinner permite crear cuadros como el siguiente: Son elementos muy comunes en los programas. A través de los dos botones triangulares se puede hacer que el valor del cuadro aumente o disminuya. También se puede escribir directamente un valor dentro del cuadro. Ejercicio guiado 1. Crea un nuevo proyecto. 2. Añade en él un JSpinner. Su nombre será spiValor. 3. Añade una etiqueta con borde. Su nombre será etiValor. 4. La ventana tendrá el siguiente aspecto: 5. Interesa que cuando cambie el JSpinner (ya sea porque se pulsaron los botones triangulares o porque se escribió dentro) aparezca el valor correspondiente dentro de la etiqueta. Para ello, tendrá que programar el evento stateChanged del JSpinner. En el evento stateChanged introduzca el siguiente código: etiValor.setText("El valor es: "+spiValor.getValue().toString());
  • 2. 6. Como puedes observar, lo que hace el programa es recoger el valor que tiene el JSpinner a través del método getValue y luego se lo asigna a la etiqueta con el clásico setText. (Es muy parecido a los deslizadores) Debes tener en cuenta que el valor devuelto no es un número ni una cadena, así que en el ejemplo se ha usado el método toString() para convertirlo a una cadena. 7. Prueba el programa y observa su funcionamiento: El usuario modifica el valor del JSpinner... Y aquí aparece el valor seleccionado. 8. Observa como los valores del JSpinner aumentan o disminuyen en 1. Por otro lado, no parece haber un límite para los valores del JSpinner. La pregunta ahora es: ¿Se puede modificar el contenido del JSpinner de forma que tenga unos valores concretos? La respuesta es sí. Veamos como hacerlo. 9. Entra dentro del código del programa y, dentro del constructor, añade este código debajo de initComponents: SpinnerNumberModel nm = new SpinnerNumberModel(); nm.setMaximum(10); nm.setMinimum(0); spiValor.setModel(nm); 10. Este código hace lo siguiente: a. El JSpinner, al igual que los JList y los JComboBox, es un objeto que contiene otro objeto “modelo”, y es el objeto “modelo” el que contiene los números visualizados en el JSpinner. b. En el código anterior se crea un “modelo” para el JSpinner, se definen los valores que contendrá, y luego se asigna al JSpinner. Estudiemos las líneas del código. c. La primera línea crea un “modelo” llamado nm. Los modelos de los JSpinner son del tipo SpinnerNumberModel. Necesitarás incluir el import correspondiente (atento a la bombilla)
  • 3. d. En la segunda línea se define como valor máximo del modelo el 10, a través de un método llamado setMaximum. e. En la tercera línea se define como valor mínimo del modelo el 0, a través de un método llamado setMinimum. f. Finalmente se asigna el modelo creado al JSpinner. g. Este código, en definitiva, hará que el JSpinner muestre los valores comprendidos entre 0 y 10. 11. Prueba el programa y observa los valores que puede tomar el JSpinner. Ahora los valores están comprendidos entre 0 y 10 12. Vamos a añadir otra mejora. Cambie el código del constructor por este otro. (Observa que solo se ha añadido una línea): SpinnerNumberModel nm = new SpinnerNumberModel(); nm.setMaximum(10); nm.setMinimum(0); nm.setStepSize(2); spiValor.setModel(nm); 13. La línea añadida es: nm.setStepSize(2); Esta línea usa un método del modelo del JSpinner que permite definir el valor de cambio del JSPinner. Dicho de otra forma, esta línea hace que los valores del JSpinner salten de 2 en 2. 14. Ejecuta el programa de nuevo y observa como cambian los valores del JSpinner. 15. El modelo del JSpinner tiene también un método llamado setValue que permite asignar un valor inicial al modelo. Pruebe a usar este método para hacer que el JSpinner muestre desde el principio el valor 4.
  • 4. CONCLUSIÓN Los JSpinners son objetos que permiten seleccionar un número, ya sea escribiéndolo en el recuadro, o bien a través de dos botones triangulares que permiten aumentar o disminuir el valor actual. Los JSpinners son objetos con “modelo”. Es decir, este objeto contiene a su vez otro objeto “modelo” que es el que realmente contiene los datos. Datos  Modelo  JSpinner Para definir el contenido del JSpinner es necesario crear un modelo del tipo SpinnerNumberModel. Se le asigna al modelo los números deseados, y finalmente se une el modelo con el JSpinner. El objeto modelo del JSpinner permite definir el valor mínimo y el valor máximo, así como el intervalo de aumento de los valores.