Programación interactiva. Oscar Bedoya
|
|
|
- José Carlos Plaza Duarte
- hace 9 años
- Vistas:
Transcripción
1 Programación interactiva Oscar Bedoya
2 Interfaces gráficas con Java Swing
3 Una interfaz gráfica con el usuario (GUI) es un mecanismo incorporado en las aplicaciones para hacer más amigable y entendible la interacción con el usuario Las GUIs se crean a partir de componentes, éstos permiten que el usuario interactúe mediante el ratón, teclado y otras formas de entrada.
4 Estructura de las aplicaciones GUI Declarar una clase que herede de la superclase JFrame Declarar cada componente que hará parte de la GUI Dentro del método constructor, crear y organizar los componentes Declarar el método main
5 Estructura de las aplicaciones GUI Declarar una clase que herede de la superclase JFrame Declarar cada componente que hará parte de la GUI Dentro del método constructor, crear y organizar los componentes Declarar el método main
6 JFrame Clase Clase() main()
7 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE );
8 JFrame GUI GUI() main()
9 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { Toda GUI debe heredar de la clase JFrame public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE );
10 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); Se debe DECLARAR cada componente que hará parte de la GUI public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE );
11 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); Método constructor CREAR cada componente y organizarlo de acuerdo a lo que se requiere public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE );
12 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); public static void main( String a[] ) { GUI aplicacion = new GUI(); Se crea un objeto de la aplicación aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE);
13 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); Método constructor Establecer el título de la ventana public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE );
14 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); Crear el contenedor. Es el espacio que mantiene el contenido de la ventana public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE );
15 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); Crear el contenedor. Es el espacio que mantiene el contenido de la ventana public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE );
16 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); Crear el contenedor. Es el espacio que mantiene el contenido de la ventana public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE ); Contenedor
17 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); Se establecen las dimensiones de la ventana public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE );
18 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); Algunos componentes que se pueden agregar al contenedor: JLabel JButton JTextField JCheckButtton JRadioButton JList public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE);
19 import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GUI extends JFrame { public GUI() { super( "Título de la GUI" ); Container contenedor = getcontentpane(); contenedor.setlayout( new FlowLayout() ); setsize( 275, 170 ); setvisible( true ); Declarar Crear y organizar Algunos componentes que se pueden agregar al contenedor: JLabel JButton JTextField JCheckButtton JRadioButton JList public static void main( String a[] ) { GUI aplicacion = new GUI(); aplicacion.setdefaultcloseoperation( JFrame.EXIT_ON_CLOSE);
20 JLabel (Etiqueta) Las etiquetas son componentes que permiten mostrar un mensaje, en texto o gráfico, de tal manera que el usuario tenga una idea más clara de cómo interactuar con la aplicación Etiqueta Etiqueta
21
22 JLabel (Etiqueta) Declarar la etiqueta private JLabel etiqueta1; Crear la etiqueta Se tienen varias formas etiqueta1=new JLabel( Texto de la etiqueta ); contenedor.add(etiqueta1);
23 JLabel (Etiqueta) Declarar la etiqueta private JLabel etiqueta1; Crear la etiqueta Se tienen varias formas etiqueta1=new JLabel( Texto de la etiqueta ); contenedor.add(etiqueta1); contenedor.add(etiqueta1); Inicialmente el contenedor está vacío
24 JLabel (Etiqueta) Declarar la etiqueta private JLabel etiqueta1; Crear la etiqueta Se tienen varias formas etiqueta1=new JLabel( Texto de la etiqueta ); etiqueta1.settooltiptext( "Esta es la etiqueta 1" ); contenedor.add(etiqueta1);
25 JLabel (Etiqueta) Declarar la etiqueta private JLabel etiqueta1; Crear la etiqueta Se tienen varias formas etiqueta1=new JLabel( Texto de la etiqueta ); etiqueta1.settooltiptext( "Esta es la etiqueta 1" ); contenedor.add(etiqueta1); El método settooltiptext permite establecer el texto que se mostrará en caso de que el usuario pase el mouse por encima de la etiqueta
26 JLabel (Etiqueta) Declarar la etiqueta private JLabel etiqueta1; Crear la etiqueta Se tienen varias formas etiqueta1=new JLabel( Texto de la etiqueta ); etiqueta1.settooltiptext( "Esta es la etiqueta 1" ); contenedor.add(etiqueta1);
27 Otra forma consiste en crear una etiqueta con icono Icon imagen = new ImageIcon( "image1.gif" ); etiqueta2 = new JLabel( "Etiqueta con texto e icono ); etiqueta2.seticon(imagen); etiqueta2.sethorizontaltextposition(swingconstants.right); etiqueta2.settooltiptext( "Esta es la etiqueta2" ); contenedor.add( etiqueta2 );
28 Otra forma consiste en crear una etiqueta con icono Icon imagen = new ImageIcon( "image1.gif" ); etiqueta2 = new JLabel( "Etiqueta con texto e icono ); etiqueta2.seticon(imagen); etiqueta2.sethorizontaltextposition(swingconstants.right); etiqueta2.settooltiptext( "Esta es la etiqueta2" ); contenedor.add( etiqueta2 );
29 Otra forma etiqueta3 = new JLabel(); etiqueta3.settext( "Etiqueta con icono y texto en parte inferior" ); etiqueta3.seticon( imagen ); etiqueta3.setverticaltextposition( SwingConstants.BOTTOM ); etiqueta3.settooltiptext( "Esta es la etiqueta3" ); contenedor.add( etiqueta3 );
30 Otra forma etiqueta3 = new JLabel(); etiqueta3.settext( "Etiqueta con icono y texto en parte inferior" ); etiqueta3.seticon( imagen ); etiqueta3.setverticaltextposition( SwingConstants.BOTTOM ); etiqueta3.settooltiptext( "Esta es la etiqueta3" ); contenedor.add( etiqueta3 ); El texto debe aparecer debajo del icono
31 Otra forma etiqueta3 = new JLabel(); etiqueta3.settext( "Etiqueta con icono y texto en parte inferior" ); etiqueta3.seticon( imagen ); etiqueta3.setverticaltextposition( SwingConstants.BOTTOM ); etiqueta3.settooltiptext( "Esta es la etiqueta3" ); contenedor.add( etiqueta3 ); Las constantes de posición horizontal en SwingConstants son: LEFT, CENTER, RIGHT y en la posición vertical son TOP, CENTER, BOTTOM
32 Otra forma etiqueta3 = new JLabel(); etiqueta3.settext( "Etiqueta con icono y texto en parte inferior" ); etiqueta3.seticon( imagen ); etiqueta3.setverticaltextposition( SwingConstants.BOTTOM ); etiqueta3.settooltiptext( "Esta es la etiqueta3" ); contenedor.add( etiqueta3 ); PruebaEtiqueta
33 Métodos setfont y setforeground etiqueta3 = new JLabel(); etiqueta3.settext( "Etiqueta con icono y texto en parte inferior" ); etiqueta3.seticon( imagen ); etiqueta3.setfont(new Font("Arial", Font.BOLD, 14)); etiqueta3.setforeground(color.black); Se puede cambiar el tipo de fuente, tamaño y color
34 JTextField y JPasswordField (Campos de texto) Los JTextField son áreas de una sola línea en las que el usuario puede introducir texto mediante el teclado o bien, el programa puede mostrar un resultado Campo de texto en el que el programa muestra un resultado Campo de texto en el que el usuario ingresa datos
35 JTextField y JPasswordField (Campos de texto) Los JPasswordField son áreas en los que el texto se representa con simbolos * para ocultarlo de otros usuarios JTextField JPasswordField
36 JTextField (Campo de texto) Declarar el campo private JTextField campotexto1; Crear el campo Se tienen varias formas campotexto1=new JTextField(10); contenedor.add(campotexto1);
37 JTextField (Campo de texto) Declarar el campo private JTextField campotexto1; Crear el campo Se tienen varias formas campotexto1=new JTextField(10); contenedor.add(campotexto1); Crea un campo de texto con 10 columnas
38 JTextField (Campo de texto) Declarar el campo private JTextField campotexto2; Crear el campo Se tienen varias formas campotexto2=new JTextField( Escriba el texto aquí ); contenedor.add(campotexto2);
39 JTextField (Campo de texto) Declarar el campo private JTextField campotexto2; Crear el campo Se tienen varias formas campotexto2=new JTextField( Escriba el texto aquí ); contenedor.add(campotexto2); Crea un campo de texto con texto predeterminado. El tamaño del campo estará dado por la longitud del mensaje
40 JTextField (Campo de texto) Declarar el campo private JTextField campotexto2; Crear el campo Se tienen varias formas campotexto2=new JTextField( Escriba el texto aquí,20); contenedor.add(campotexto2); Cuando se crea un campo de texto con texto predeterminado, el tamaño del campo queda determinado por la longitud del mensaje, si se quiere establecer un valor diferente se puede utilizar este constructor
41 JTextField (Campo de texto) Declarar el campo private JTextField campotexto3; Crear el campo Se tienen varias formas campotexto3=new JTextField( Campo de texto no editable,20); campotexto3.seteditable(false); contenedor.add(campotexto3);
42 JTextField (Campo de texto) Declarar el campo private JTextField campotexto3; Crear el campo Se tienen varias formas campotexto3=new JTextField( Campo de texto no editable,20); campotexto3.seteditable(false); contenedor.add(campotexto3); Crea un campo de texto no editable, es decir, no se puede cambiar su contenido hasta que se ejecute el comando campotexto3.seteditable(true);
43 JPasswordField Declarar el campo private JPasswordField campocontraseña; Crear el campo Se tienen los mismos constructores que para JTextField campocontraseña=new JPasswordField(6); contenedor.add(campocontraseña); Crea un campo para contraseña
44 Eventos y metáfora del oyente Java utiliza la metáfora del oyente para indicar que cualquier GUI está escuchando continuamente que suceda un evento Los eventos que pueden ocurrir en una GUI son: Hacer clic sobre un botón Completar un campo de texto y hacer clic Hacer clic sobre una opción de un menú Ejecutar un comando con teclado
45 Eventos y metáfora del oyente Los oyentes se han clasificado de acuerdo al componente que genera los eventos y se tienen interfaces que ayudan a manejar tales eventos ActionListener MouseListener ItemListener KeyListener
46 Tipo de evento ActionEvent MouseEvent KeyEvent ItemEvent Interfaz ActionListener MouseListener, MouseMotionListener KeyListener ItemListener
47 Eventos y metáfora del oyente Cada componente que pueda generar un evento, debe tener un manejador que indique las acciones que deben ocurrir si se genera un evento
48 JTextField y JPasswordField (Campos de texto) Los campos de texto, a diferencia de las etiquetas, generan eventos!!! Cuando se escribe en el campo de texto y se da Enter, se genera un evento Concepto de FOCO: es el componente de la GUI que está actualmente siendo utilizado, cuando un campo de texto genera un evento, se dice que tiene el foco
49 Recuerde los oyentes (interfaces) ActionListener MouseListener ItemListener KeyListener Entre estos, un campo de texto genera un evento de acción (ActionEvent) Utilizar un objeto manejador de una clase que implemente la interfaz ActionListener!!!
50 Algunos métodos de las clases JTextField y JPasswordField Método settext(mensaje) gettext() addactionlistener(manejador) Descripción Permite colocar un mensaje de tipo String en el campo Permite obtener el valor escrito en el campo Adicionar el manejador de eventos al campo. El manejador es un objeto de una clase que implemente la interfaz ActionListener
51 Para que una aplicación pueda capturar los eventos que allí se generen debe: -Crear la clase que implemente la interfaz -Crear un objeto de esa clase (manejador) -Registrar el manejador en cada componente que pueda generar un evento del tipo considerado en la interfaz
52 private class ManejadorCampoTexto implements ActionListener { public void actionperformed( ActionEvent evento ) { if ( evento.getsource() == campotexto1 ) { //Instrucciones que se deben ejecutar si la fuente del evento fue el campotexto1 // fin del método actionperformed // fin de la clase interna privada ManejadorCampoTexto
53 private class ManejadorCampoTexto implements ActionListener { public void actionperformed( ActionEvent evento ) { La clase ManejadorCampoTexto implementa ActionListener if ( evento.getsource() == campotexto1 ) { //Instrucciones que se deben ejecutar si la fuente del evento fue el campotexto1 // fin del método actionperformed // fin de la clase interna privada ManejadorCampoTexto
54 private class ManejadorCampoTexto implements ActionListener { public void actionperformed( ActionEvent evento ) { Método que maneja un evento ActionEvent if ( evento.getsource() == campotexto1 ) { //Instrucciones que se deben ejecutar si la fuente del evento fue el campotexto1 // fin del método actionperformed // fin de la clase interna privada ManejadorCampoTexto
55 private class ManejadorCampoTexto implements ActionListener { public void actionperformed( ActionEvent evento ) { if ( evento.getsource() == campotexto1 ) { Si la fuente del evento es el campotexto1 //Instrucciones que se deben ejecutar si la fuente del evento fue el campotexto1 // fin del método actionperformed // fin de la clase interna privada ManejadorCampoTexto
56 private class ManejadorCampoTexto implements ActionListener { public void actionperformed( ActionEvent evento ) { if ( evento.getsource() == campotexto1 ) { //Instrucciones que se deben ejecutar si la fuente del evento fue el campotexto1 if ( evento.getsource() == campotexto2 ) { //Instrucciones que se deben ejecutar si la fuente del evento fue el campotexto2 // fin del método actionperformed // fin de la clase interna privada ManejadorCampoTexto
57 Para que una aplicación pueda capturar los eventos que allí se generen debe: Crear la clase que implemente la interfaz Se puede colocar en el mismo archivo de la GUI Crear un objeto de esa clase (manejador) ManejadorCampoTexto manejador = new ManejadorCampoTexto(); Registrar el manejador en cada componente que pueda generar un evento del tipo considerado en la interfaz campotexto1.addactionlistener( manejador ); campotexto2.addactionlistener( manejador ); campotexto3.addactionlistener( manejador ); campocontraseña.addactionlistener( manejador );
58 Para que una aplicación pueda capturar los eventos que alli se generen debe: Crear la clase que implemente la interfaz Se puede colocar en el mismo archivo de la GUI Crear un objeto de esa clase (manejador) ManejadorCampoTexto manejador = new ManejadorCampoTexto(); Registrar el manejador en cada componente que pueda generar un evento del tipo considerado en la interfaz campotexto1.addactionlistener( manejador ); campotexto2.addactionlistener( manejador ); campotexto3.addactionlistener( manejador ); campocontraseña.addactionlistener( manejador ); PruebaCampoTexto
59 Problema: Desarrolle un traductor Español Inglés con dos campos de texto, de tal forma que cuando se escriba un palabra en uno de los campos y se de enter, aparezca la traducción en el otro campo de texto. Se deben considerar 5 palabras.
60 Problema: Desarrolle una GUI con una etiqueta y un campo de texto. El contenido inicial de la etiqueta es el número 0. Cada vez que se de enter en el campo, se mostrará en la etiqueta la cantidad de veces que esto ha ocurrido. Utilice tamaño 40 para el texto en la etiqueta.
61 Problema: Desarrolle una GUI con una etiqueta y un campo de texto. El contenido inicial de la etiqueta es el número 0. Cada vez que se de enter en el campo, se mostrará en la etiqueta la cantidad de veces que esto ha ocurrido. Utilice tamaño 40 para el texto en la etiqueta. String.valueOf( int var ) : convierte un entero a String
62 JButton (Botón) Es un componente en el que el usuario hace clic para desencadenar cierta acción Un programa puede utilizar varios tipos de botones -Botones de comando -Casillas de verificación -Botones interruptores -Botones de opción
63
64 JButton (Botón) Declarar el botón private JButton botonsimple; Crear el campo Se tienen varias formas botonsimple=new JButton( Botón simple ); contenedor.add(botonsimple);
65 JButton (Botón) Declarar el botón private JButton botonsimple; Crear el campo Se tienen varias formas botonsimple=new JButton( Botón simple ); contenedor.add(botonsimple); Botón que solo tiene texto
66 JButton (Botón) Declarar el botón private JButton botonsimple; Crear el campo Se tienen varias formas Icon image1 = new ImageIcon( "image6.gif" ); Icon image2 = new ImageIcon( "image7.gif" ); botonelegante = new JButton( "Botón elegante", image1 ); botonelegante.setrollovericon( image2 ); botonelegante.settooltiptext( "Muestra un mensaje" ); botonelegante.setmnemonic('m'); contenedor.add( botonelegante );
67 JButton (Botón) Declarar el botón private JButton botonsimple; Crear el campo Se tienen varias formas Icon image1 = new ImageIcon( "image6.gif" ); Icon image2 = new ImageIcon( "image7.gif" ); botonelegante = new JButton( "Botón elegante", image1 ); botonelegante.setrollovericon( image2 ); botonelegante.settooltiptext( "Muestra un mensaje" ); botonelegante.setmnemonic('m'); contenedor.add( botonelegante ); Imagen inicial del botón
68 JButton (Botón) Declarar el botón private JButton botonsimple; Crear el campo Se tienen varias formas Icon image1 = new ImageIcon( "image6.gif" ); Icon image2 = new ImageIcon( "image7.gif" ); botonelegante = new JButton( "Botón elegante", image1 ); botonelegante.setrollovericon( image2 ); botonelegante.settooltiptext( "Muestra un mensaje" ); botonelegante.setmnemonic('m'); contenedor.add( botonelegante ); Imagen cuando se pase el mouse por encima del botón
69 JButton (Botón) Declarar el botón private JButton botonsimple; Crear el campo Se tienen varias formas Icon image1 = new ImageIcon( "image6.gif" ); Icon image2 = new ImageIcon( "image7.gif" ); botonelegante = new JButton( "Botón elegante", image1 ); botonelegante.setrollovericon( image2 ); botonelegante.settooltiptext( "Muestra un mensaje" ); botonelegante.setmnemonic('m'); contenedor.add( botonelegante ); Un nemómico es un atajo con teclado
70 Se tienen varias formas Icon image1 = new ImageIcon( "image6.gif" ); Icon image2 = new ImageIcon( "image7.gif" ); botonelegante = new JButton( "Botón elegante", image1 ); botonelegante.setrollovericon( image2 ); botonelegante.settooltiptext( "Muestra un mensaje" ); botonelegante.setmnemonic('m'); contenedor.add( botonelegante ); Botón inicial Botón cuando se pasa el mouse por encima
71 JButton (Botón) Un botón (de comando) genera un evento ActionEvent cuando el usuario hace clic en él Utilizar un objeto manejador de una clase que implemente la interfaz ActionListener!!!
72 private class ManejadorBoton implements ActionListener { // manejar evento de botón public void actionperformed( ActionEvent evento ) { if (evento.getsource()==botonsimple) JOptionPane.showMessageDialog( null, "Usted oprimió el boton simple"); if (evento.getsource()==botonelegante) JOptionPane.showMessageDialog( null, "Usted oprimió el boton elegante"); // fin de la clase interna privada ManejadorBoton
73 private class ManejadorBoton implements ActionListener { // manejar evento de botón public void actionperformed( ActionEvent evento ) { if (evento.getsource()==botonsimple) JOptionPane.showMessageDialog( null, "Usted oprimió el boton simple"); if (evento.getsource()==botonelegante) JOptionPane.showMessageDialog( null, "Usted oprimió el boton elegante"); // fin de la clase interna privada ManejadorBoton PruebaBoton
74 Problema: Modifique la GUI anterior de tal manera que se indique la cantidad de veces que se ha oprimido cada botón
75 JButton (Botón) Método setenabled() Permite habilitar o deshabilitar un botón nombreboton.setenabled(false); Deshabilita el botón, no ejecuta el oyente
76 JButton (Botón) Método setenabled() Permite habilitar o deshabilitar un botón nombreboton.setenabled(false); Deshabilita el botón, no ejecuta el oyente PruebaBoton2
77 Problema: Desarrolle una GUI que tenga dos botones. Inicialmente uno de los dos está deshabilitado pero se puede habilitar si se hace clic en el segundo botón. Si esto ocurre, el botón dos se deshabilita y solo se podrá habilitar si se hace clic en el botón uno.
78 Problema: Desarrolle el traductor con botones. Un botón para traducir a inglés y otro para alemán
79 JCheckBox (Casilla de verificación) En un checkbox, se tienen varias casillas, se pueden marcar todas
80 JCheckBox (Casilla de verificacion) Un ChekBox genera un evento ItemEvent cuando el usuario hace clic en él Utilizar un objeto manejador de una clase que implemente la interfaz ItemListener!!!
81 JChekbox (Casilla de verificación) Declarar private JChekBox negrita, cursiva; Crear negrita = new JCheckBox( "Negrita" ); contenedor.add( negrita ); cursiva = new JCheckBox( "Cursiva" ); contenedor.add( cursiva );
82 JChekbox (Casilla de verificacion) Declarar private JChekBox negrita, cursiva; Crear negrita = new JCheckBox( "Negrita" ); contenedor.add( negrita ); cursiva = new JCheckBox( "Cursiva" ); contenedor.add( cursiva ); ManejadorCasillaVerificacion manejador = new ManejadorCasillaVerificacion(); negrita.additemlistener( manejador ); cursiva.additemlistener( manejador ); Se adiciona el manejador, un objeto de una clase que implementa la interfaz ItemListener, por medio del método additemlistener
83 private class ManejadorCasillaVerificacion implements ItemListener { private int valnegrita = Font.PLAIN; private int valcursiva = Font.PLAIN; // responder a eventos de casilla de verificación public void itemstatechanged( ItemEvent evento ) { // procesar eventos de casilla de verificación negrita if ( evento.getsource() == negrita ) valnegrita = negrita.isselected()? Font.BOLD : Font.PLAIN; // procesar eventos de casilla de verificación cursiva if ( evento.getsource() == cursiva ) valcursiva = cursiva.isselected()? Font.ITALIC : Font.PLAIN; // establecer tipo de letra del campo de texto campo.setfont( new Font( "Serif", valnegrita + valcursiva, 14 ) ); // fin del método itemstatechanged // fin de la clase interna privada ManejadorCasillaVerificacion
84 private class ManejadorCasillaVerificacion implements ItemListener { Se implementa la interfaz ItemListener private int valnegrita = Font.PLAIN; private int valcursiva = Font.PLAIN; // responder a eventos de casilla de verificación public void itemstatechanged( ItemEvent evento ) { // procesar eventos de casilla de verificación negrita if ( evento.getsource() == negrita ) valnegrita = negrita.isselected()? Font.BOLD : Font.PLAIN; // procesar eventos de casilla de verificación cursiva if ( evento.getsource() == cursiva ) valcursiva = cursiva.isselected()? Font.ITALIC : Font.PLAIN; // establecer tipo de letra del campo de texto campo.setfont( new Font( "Serif", valnegrita + valcursiva, 14 ) ); // fin del método itemstatechanged // fin de la clase interna privada ManejadorCasillaVerificacion
85 private class ManejadorCasillaVerificacion implements ItemListener { private int valnegrita = Font.PLAIN; private int valcursiva = Font.PLAIN; // responder a eventos de casilla de verificación public void itemstatechanged( ItemEvent evento ) { // procesar eventos de casilla de verificación negrita if ( evento.getsource() == negrita ) valnegrita = negrita.isselected()? Font.BOLD : Font.PLAIN; El evento ItemEvent se maneja por medio del método itemstatechanged // procesar eventos de casilla de verificación cursiva if ( evento.getsource() == cursiva ) valcursiva = cursiva.isselected()? Font.ITALIC : Font.PLAIN; // establecer tipo de letra del campo de texto campo.setfont( new Font( "Serif", valnegrita + valcursiva, 14 ) ); // fin del método itemstatechanged // fin de la clase interna privada ManejadorCasillaVerificacion
86 private class ManejadorCasillaVerificacion implements ItemListener { private int valnegrita = Font.PLAIN; private int valcursiva = Font.PLAIN; // responder a eventos de casilla de verificación public void itemstatechanged( ItemEvent evento ) { // procesar eventos de casilla de verificación negrita if ( evento.getsource() == negrita ) valnegrita = negrita.isselected()? Font.BOLD : Font.PLAIN; // procesar eventos de casilla de verificación cursiva if ( evento.getsource() == cursiva ) valcursiva = cursiva.isselected()? Font.ITALIC : Font.PLAIN; // establecer tipo de letra del campo de texto campo.setfont( new Font( "Serif", valnegrita + valcursiva, 14 ) ); // fin del método itemstatechanged PruebaCasillaVerificacion // fin de la clase interna privada ManejadorCasillaVerificacion
87 JRadioButton (Botones de opción) En un RadioButton, solo una de las opciones se puede seleccionar al tiempo
88 JRadioButton (Botones de opción) Un RadioButton genera un evento ItemEvent cuando el usuario hace clic en él Utilizar un objeto manejador de una clase que implemente la interfaz ItemListener!!!
89 JRadioButton (Botones de opción) Declarar private JRadioButton botonsimple, botonnegrita private ButtonGruop grupobotonesopcion; Como existe una relación entre los botones (no se puede seleccionar más de un botón al tiempo), se debe agrupar en un componente ButtonGroup Después de crear cada RadioButton, se deben adicionar a un único ButtonGroup
90 JRadioButton (Botones de opción) Crear botonsimple = new JRadioButton( "Simple", true ); contenedor.add( botonsimple ); botonnegrita = new JRadioButton( "Negrita", false ); contenedor.add( botonnegrita ); botoncursiva = new JRadioButton( "Cursiva", false ); contenedor.add( botoncursiva ); botonnegritacursiva = new JRadioButton( "Negrita/Cursiva", false ); contenedor.add( botonnegritacursiva );
91 JRadioButton (Botones de opción) Crear botonsimple = new JRadioButton( "Simple", true ); contenedor.add( botonsimple ); Se puede indicar cuál de las opciones estará activa en el momento de iniciar la aplicación botonnegrita = new JRadioButton( "Negrita", false ); contenedor.add( botonnegrita ); botoncursiva = new JRadioButton( "Cursiva", false ); contenedor.add( botoncursiva ); botonnegritacursiva = new JRadioButton( "Negrita/Cursiva", false ); contenedor.add( botonnegritacursiva );
92 JRadioButton (Botones de opción) Crear botonsimple = new JRadioButton( "Simple", true ); contenedor.add( botonsimple ); botonnegrita = new JRadioButton( "Negrita", false ); contenedor.add( botonnegrita ); botoncursiva = new JRadioButton( "Cursiva", false ); contenedor.add( botoncursiva ); botonnegritacursiva = new JRadioButton( "Negrita/Cursiva", false ); contenedor.add( botonnegritacursiva ); ManejadorBotonOpcion manejador = new ManejadorBotonOpcion(); botonsimple.additemlistener(manejador); botonnegrita.additemlistener(manejador); botoncursiva.additemlistener(manejador); botonnegritacursiva.additemlistener(manejador); Se adiciona el oyente a cada RadioButton
93 botonsimple = new JRadioButton( "Simple", true ); contenedor.add( botonsimple ); botonnegrita = new JRadioButton( "Negrita", false ); contenedor.add( botonnegrita ); botoncursiva = new JRadioButton( "Cursiva", false ); contenedor.add( botoncursiva ); botonnegritacursiva = new JRadioButton( "Negrita/Cursiva", false ); contenedor.add( botonnegritacursiva ); ManejadorBotonOpcion manejador = new ManejadorBotonOpcion(); botonsimple.additemlistener(manejador); botonnegrita.additemlistener(manejador); botoncursiva.additemlistener(manejador); botonnegritacursiva.additemlistener(manejador); grupobotonesopcion = new ButtonGroup(); grupobotonesopcion.add( botonsimple ); grupobotonesopcion.add( botonnegrita ); grupobotonesopcion.add( botoncursiva ); grupobotonesopcion.add( botonnegritacursiva ); Se crea el ButtonGroup y se le adicionan los RadioButton
94 botonsimple = new JRadioButton( "Simple", true ); contenedor.add( botonsimple ); botonnegrita = new JRadioButton( "Negrita", false ); contenedor.add( botonnegrita ); botoncursiva = new JRadioButton( "Cursiva", false ); contenedor.add( botoncursiva ); botonnegritacursiva = new JRadioButton( "Negrita/Cursiva", false ); contenedor.add( botonnegritacursiva ); ManejadorBotonOpcion manejador = new ManejadorBotonOpcion(); botonsimple.additemlistener(manejador); botonnegrita.additemlistener(manejador); botoncursiva.additemlistener(manejador); botonnegritacursiva.additemlistener(manejador); grupobotonesopcion = new ButtonGroup(); grupobotonesopcion.add( botonsimple ); grupobotonesopcion.add( botonnegrita ); grupobotonesopcion.add( botoncursiva ); grupobotonesopcion.add( botonnegritacursiva ); PruebaBotonOpcion Ver Oyente
95 JComboBox (Cuadro combinado) Un ComboBox, conocido como lista desplegable proporciona una lista de elementos de la cual el usuario puede seleccionar solamente uno Los objetos ComboBox generan eventos ItemEvent cuando el usuario hace clic en una de las opciones de la lista Utilizar un objeto manejador de una clase que implemente la interfaz ItemListener!!!
96 JComboBox (Cuadro combinado) Declarar private JComboBox cuadrocombimagenes; private String nombres[] = { "image3.gif", "image10.gif", "image5.gif", "image8.gif" ;
97 JComboBox (Cuadro combinado) Declarar private JComboBox cuadrocombimagenes; private String nombres[] = { "image3.gif", "image10.gif", "image5.gif", "image8.gif" ; Se debe crear una arreglo con los datos que aparecerán en la lista
98 JComboBox (Cuadro combinado) Crear cuadrocombimagenes = new JComboBox( nombres ); cuadrocombimagenes.setmaximumrowcount(4); Se pasa al constructor el arreglo con los datos que aparecerán en la lista
99 JComboBox (Cuadro combinado) Crear cuadrocombimagenes = new JComboBox( nombres ); cuadrocombimagenes.setmaximumrowcount(4); Se establece la cantidad máxima de ítems que puede tener la lista sin necesitar la barra de desplazamiento
100 JComboBox (Cuadro combinado) Crear cuadrocombimagenes = new JComboBox( nombres ); cuadrocombimagenes.setmaximumrowcount(2); Aparece la barra si se coloca el valor en 2 y hay 4 elementos en la lista
101 private class ManejadorCombo implements ItemListener { public void itemstatechanged( ItemEvent evento ) { if ( evento.getstatechange() == ItemEvent.SELECTED ){ int index=cuadrocombimagenes.getselectedindex(); System.out.println("Seleccionó el item " + index + " en la lista"); etiqueta.seticon( iconos[index ] );
102 private class ManejadorCombo implements ItemListener { public void itemstatechanged( ItemEvent evento ) { if ( evento.getstatechange() == ItemEvent.SELECTED ){ int index=cuadrocombimagenes.getselectedindex(); System.out.println("Seleccionó el item " + index + " en la lista"); etiqueta.seticon( iconos[index ] ); Método que permite conocer que un ítem cambio de estado
103 private class ManejadorCombo implements ItemListener { public void itemstatechanged( ItemEvent evento ) { if ( evento.getstatechange() == ItemEvent.SELECTED ){ int index=cuadrocombimagenes.getselectedindex(); System.out.println("Seleccionó el item " + index + " en la lista"); etiqueta.seticon( iconos[index ] ); Método del ComboBox que permite saber cuál de los ítems fue seleccionado. Retorna el índice (comenzando en 0)
104 private class ManejadorCombo implements ItemListener { public void itemstatechanged( ItemEvent evento ) { if ( evento.getstatechange() == ItemEvent.SELECTED ){ int index=cuadrocombimagenes.getselectedindex(); System.out.println("Seleccionó el item " + index + " en la lista"); etiqueta.seticon( iconos[index ] ); PruebaCuadroComb
105 JList (listas de selección) Una lista de selección permite al usuario seleccionar uno (Listas de selección simple) o varios elementos de una lista (Listas de selección múltiple) Las listas de selección se combinan con la clase JScrollPane JList JScrollPane
106 Una lista de selección genera eventos ListSelectionEvent cuando el usuario hace clic en una de las opciones de la lista Utilizar un objeto manejador de una clase que implemente la interfaz ListSelectionListener!!! Para adicionar este escucha se debe utilizar el método addlistselectionlistener
107 JList (listas de selección) Declarar private JList listacolores; private JScrollPane scroll; private final String nombrescolores[] = { "Negro", "Azul", "Cyan", "Gris oscuro, "Gris", "Verde", "Gris claro", "Magenta", "Naranja", "Rosa", "Rojo", "Blanco", "Amarillo" ; Se debe crear un arreglo con los datos que aparecerán en la lista
108 JList (listas de selección) Crear listacolores = new JList( nombrescolores ); listacolores.setvisiblerowcount( 5 ); listacolores.setselectionmode( ListSelectionModel.SINGLE_SELECTION ); scroll = new JScrollPane(listaColores); contenedor.add(scroll);
109 JList (listas de selección) Crear listacolores = new JList( nombrescolores ); listacolores.setvisiblerowcount( 5 ); listacolores.setselectionmode( ListSelectionModel.SINGLE_SELECTION ); scroll = new JScrollPane(listaColores); contenedor.add(scroll); Se pasa al constructor la lista con los nombres Se adiciona la lista a un scroll Se especifica que es una lista de selección simple
110 JList (listas de selección) Crear listacolores = new JList( nombrescolores ); listacolores.setvisiblerowcount( 5 ); listacolores.setselectionmode( ListSelectionModel.SINGLE_SELECTION ); scroll = new JScrollPane(listaColores); contenedor.add(scroll); ManejadorLista manejador = new ManejadorLista(); listacolores.addlistselectionlistener(manejador);
111 private class ManejadorLista implements ListSelectionListener { public void valuechanged( ListSelectionEvent evento ) { int index=listacolores.getselectedindex(); contenedor.setbackground(colores[index] ); Se implementa el método valuechange de la interfaz ListSelectionListener
112 private class ManejadorLista implements ListSelectionListener { public void valuechanged( ListSelectionEvent evento ) { int index=listacolores.getselectedindex(); contenedor.setbackground(colores[index] ); PruebaLista
113 JList (listas de selección) JList de selección múltiple JList de selección simple
114 JList (listas de selección) Crear listacolores = new JList( nombrescolores ); listacolores.setvisiblerowcount( 5 ); listacolores.setselectionmode(listselectionmodel.multiple_interval_selection); scroll1 = new JScrollPane(listaColores); contenedor.add(scroll1); Se especifica que se permite selección múltiple
115 public class ManejadorMultiple implements ActionListener { public void actionperformed( ActionEvent evento ) { listacopia.setlistdata( listacolores.getselectedvalues() ); Se captura el evento por medio del botón Establecer los datos que aparecerán en la lista Retorna los valores de listacolores seleccionados
116 public class ManejadorMultiple implements ActionListener { public void actionperformed( ActionEvent evento ) { listacopia.setlistdata( listacolores.getselectedvalues() ); PruebaSeleccionMultiple Explicar ancho y alto de la lista que no tiene elementos
public void mousepressed(mouseevent evento) Se llama cuando se oprime un botón del ratón, mientras el cursor del ratón está sobre un componente.
GUI Manejo de eventos de ratón Para manejar eventos de ratón debe implementarse los métodos de las interfaces de escucha de eventos MouseListener y MouseMotionListener. Estos eventos pueden atraparse para
// Suma.java // Programa de suma que utiliza a JOptionPane para entrada y salida. import javax.swing.joptionpane; // el programa usa JOptionPane
Componentes GUI. Una interfaz gráfica de usuario (GUI) presenta un mecanismo amigable al usuario para interactuar con una aplicación. Las GUIs se crean a partir de componentes de la GUI, a estos se les
Programación de Eventos
Programación de Eventos Un evento es un suceso que ocurre dentro del contexto de la ejecución de un programa. Por ejemplo, se presiona un botón, se modifica una caja de texto, se selecciona una opción
Pasos requeridos para establecer el manejo de eventos para un componente de GUI.
Manejo de eventos con clases anidadas. Por lo general un usuario interactúa con una GUI para indicar las tareas que ésta debe realizar. Por ejemplo, al escribir un mensaje de correo electrónico, pulsamos
Introducción a la Programación Orientada a Objetos
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A S GUI Objetos y s Dr. Luciano H. Tamargo http://cs.uns.edu.ar/~lt Depto. de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur, Bahía Blanca
Interacción con el Usuario Gestión de Eventos
Interacción con el Usuario Gestión de Eventos Presentación basada en: 1. Como Programar en Java. Deitel y Deitel. Ed. Prentice-Hall. 1988 2. Java 2., Curso de programación. Fco. Javier Ceballos. Ed. Alfoomega&RA-MA,
Programación Orientada a Objetos
Programación Orientada a Objetos Tema 5: Desarrollo de interfaces gráficas de usuario Tema 5-1: Conceptos básicos de SWING Contenidos Tema 5-1: Conceptos básicos de SWING 1. INTRODUCCIÓN 2. COMPONENTES
EVENTOS en Java generador de un evento gestor de eventos
Ahora ya conocemos los diferentes componentes que existen en la GUI de Java y sabemos como distribuirlos y diseñarlos pero aún no hemos hecho que interactúen con el usuario: si pulsamos sobre un botón
Aplicaciones gráficas en Java Librería Swing
Aplicaciones gráficas en Java Librería Swing Sumario: Breve introducción al paquete Swing Tipos de clases del paquete Definición y manejo de contenedores, diálogos y layouts Diseño mediante IDE (Eclipse)
Tema 6. Interfaces gráficas de usuario (Parte II Componentes y eventos)
Programación en Java Tema 6. Interfaces gráficas de usuario (Parte II Componentes y eventos) Luis Rodríguez Baena Facultad de Informática Etiquetas. JLabel Componentes de texto fijo. Su contenido sólo
Unidad 10. Polimorfismo
Unidad 10. Polimorfismo 10.1 Introducción El polimorfismo nos permite escribir programas para procesar objetos que compartan la misma superclase en una jerarquía de clases, como si todos fueran objetos
Construir una Interfaz Gráfica
Construir una Interfaz Gráfica JAVA, permite al programador: -Diseñar y programar en interfaces gráficas de usuario en forma rápida y sencilla. -Cuenta con dos paquetes de clases predefinidos que brindan
Programación orientada a objetos. Capítulo 11 Construir interfaces gráficas de usuarios
Programación orientada a objetos Capítulo 11 Construir interfaces gráficas de usuarios Interfaces gráficas de usuario (GUI: Graphical User Interface) - Componentes de las interfaces - Disposición (layout)
Desarrollo de Aplicaciones en Java INF 473
Desarrollo de Aplicaciones en Java INF 473 Desarrollo de Interfaces Gráficas Componentes Swing II Prof. José Miguel Rubio [email protected] [email protected] PUCV Marzo 2008 0 Generación de código Diferencia
Interfaces gráficas. Jose Jesus García Rueda
Interfaces gráficas Jose Jesus García Rueda Introducción Qué son las interfaces gráficas? Ejemplos bien conocidos Vamos a programar una: Colores.java Conceptos básicos Aplicación gráfica. Contenedores.
Programación de sistemas
Programación de sistemas Interfaces Gráficas I. Conceptos básicos II. Eventos Departamento de Ingeniería Telemática José Jesús García Rueda y Carlos Alario Hoyos
Programación Java Curso C GUI
Programación Java Curso 2006-1 C GUI FIUBA Introducción: Prof.. María Feldgen Ing. Osvaldo Clúa Java 1.0 poseía un modelo de interface gráfica o GUI (Graphical User Interface) que se basaba en la plataforma
USO DE LOS OBJETOS JLABEL, JTEXTFIELD Y JBUTTON
USO DE LOS OBJETOS JLABEL, JTEXTFIELD Y JBUTTON Una aplicación sin usar Formulario A continuación vamos a desarrollar una aplicación sencilla que permita calcular el área del triángulo dado los valores
Manejo de eventos AWT
Manejo de eventos AWT En las aplicaciones en modo consola, nuestro método main determina el orden en el que se ejecutan las operaciones de nuestro programa. En las aplicaciones con interfaces gráficas
INSTRUCCIÓN PEDIR EN JAVA CON JTEXTAREA Y MOSTRAR CON JLABEL. SETBOUNDS Y SETTEXT. EJEMPLOS. (CU00929C)
APRENDERAPROGRAMAR.COM INSTRUCCIÓN PEDIR EN JAVA CON JTEXTAREA Y MOSTRAR CON JLABEL. SETBOUNDS Y SETTEXT. EJEMPLOS. (CU00929C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I
INTERFACES GRÁFICAS. Algoritmia y Programación
Algoritmia y Programación CONTENIDO GUI s (Graphic User Interfaces) Qué son? Componentes Layouts Eventos Editor Componentes Layouts Eventos Slide 2 Qué son? Una interfaz gráfica de usuario (GUI) presenta
Facultad de Ingeniería Escuela de Ingeniería de Sistemas y Computación Algoritmia y Programación
Facultad de Ingeniería Escuela de Ingeniería de Sistemas y Computación Algoritmia y Programación LaboratorioTema: Arreglos Unidimensionales y Bidimensionales Fecha: 12 al 26 de Mayo Objetivos: 1. Comprender
Interfases gráficas. Programación Orientada a Objetos. https://sites.google.com/site/materialpoo/
Interfases gráficas Programación Orientada a Objetos Componenetes Button Label Panel CheckBox Canvas ComboBox (Cuadro Combinado) Jerarquía de clases Component Container Panel Window Applet Frame Dialog
JAVA 6. Gestión de Eventos
JAVA 6. Gestión de Eventos import java.awt.event.* http://giig.ugr.es/ mgea/docencia/diu/diu.html Ultima actualización: 2/Nov/2004 1 1. Modelo de gestión de eventos Acción Usuario java.util.eventobject
Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Introducción Práctica de Programación Java Antonio Rivero Cuesta Sesión VI Interfaces Gráficas de Usuario... 9 Introducción... 10 Componentes... 13 Container... 16 Gestores
Examen de Programación II (Ingeniería Informática)
Examen de Programación II (Ingeniería Informática) Septiembre 2010 1) Lenguaje C (2 puntos) Escribir el módulo "elimina_substring" (ficheros elimina_substring.h y elimina_substring.c) que defina una única
Desarrollo de Aplicaciones en Java INF 473
Desarrollo de Aplicaciones en Java INF 473 Desarrollo de Interfaces Gráficas Componentes Swing Prof. José Miguel Rubio [email protected] [email protected] PUCV Marzo 2008 0 Interfaces de usuario en java
Tipos de programas en Java. Programación basada en eventos. Programación basada en eventos. Creación de una interfaz gráfico de usuario
Tipos de programas en Java Programación basada en eventos Aplicaciones Se pueden ejecutar directamente en un entorno Java Tipos Modo de consola -Interacción mediante teclado -Interfaz basado en texto Aplicaciones
Creemos una GUI para la siguiente tabla de la base de datos.
Consideración en el diseño de una GUI: Debe ser intuitiva Definir los modos de interacción: Flexibles y adecuados Dar opciones de interrumpir una acción, volver a ejecutar una acción Pasos repetidos: macros
USO DEL OBJETO JCOMBOBOX
USO DEL OBJETO JCOMBOBOX Objeto de Control JComboBox Un objeto de control JComboBox permite dibujar en el formulario una lista desplegadle, la cual contiene opciones (ítems). ComboBox significa cuadro
INTERFACES GRÁFICAS MTRA. CAROLINA GALAVIZ INZUNZA. Mtra. Carolina Galaviz Inzunza
INTERFACES GRÁFICAS MTRA. CAROLINA GALAVIZ INZUNZA INTRODUCCIÓN Hasta ahora hemos desarrollado programas que usan la consola para interactuar con el usuario. Esa forma de interfaz de usuario es muy simple
Agenda. Contenedores y componentes
Agenda Tipos de objetos y clases de la GUI Guía detallada para crear una interfaz gráfica de usuario Guía detallada para la gestión de eventos Problema 1 del boletín 5 Problema 2 del boletín 5 Contenedores
ALGORITMICA Y PROGRAMACION POR OBJETOS I
ALGORITMICA Y PROGRAMACION POR OBJETOS I Nivel 5 Construyendo la Interfaz Gráfica Marcela Hernández Hoyos Motivación Interfaz usuario Modelo del mundo Usuario Único medio de comunicación entre el usuario
Componentes Swing. Las clases cuyo nombre comienza por J forman parte de Swing. Todas las demás están incluidas en AWT (Abstract Window Toolkit)
Componentes Swing Las clases cuyo nombre comienza por J forman parte de Swing. Todas las demás están incluidas en AWT (Abstract Window Toolkit) Component es una clase abstracta que representa a cualquier
Intefaces gráficas. Eventos. Jose Jesus García Rueda
Intefaces gráficas. Eventos Jose Jesus García Rueda Planteamiento de objetivos Ser capaces de añadirle funcionalidad a los elementos gráficos de la interfaz modificándolos también como resultado de las
Programación Basada en Eventos
Programación Basada en Eventos La construcción de una GUI utiliza un modelo de programación basado en eventos. En este modelo el orden en el cual se ejecutan las instrucciones de un programa va a quedar
Aplicaciones de Escritorio
Aplicaciones de Escritorio Interfaces Gráficas con Java Disertantes: Ing. Rasjido, José. AdeS Montenegro, Cristian. Agenda Interfaz Grafica de Usuario Interfaz Grafica de Usuario Aplicaciones de escritorio
Creando archivos *.jar 2008
PARTE I: Extendiendo los comandos de DOS Crear el archivo.jar desde la consola de DOS Paso 1: Debemos extender los comandos del DOS a través de las variables de entorno, para ello ubicamos el jdk o jre
INGRESAR DATOS CON UN CONTROL VISUAL EN JAVA. CLASE JTEXTFIELD Y MÉTODO GETTEXT. EJEMPLOS (CU00928C)
APRENDERAPROGRAMAR.COM INGRESAR DATOS CON UN CONTROL VISUAL EN JAVA. CLASE JTEXTFIELD Y MÉTODO GETTEXT. EJEMPLOS (CU00928C) Sección: Cursos Categoría: Lenguaje de programación Java nivel avanzado I Fecha
import javax.swing.*; import javax.swing.event.*; import java.awt.*; import java.awt.event.*;
1 1 1 1 0 1 0 1 /* 1 - Desarrolle un programa que permita el ingreso de dos * números en controles de tipo JTextField y mediante dos * controles de tipo JRadioButton permita seleccionar si * queremos sumarlos
USO DE LOS OBJETOS JLABEL, JTEXTFIELD Y JBUTTON
USO DE LOS OBJETOS JLABEL, JTEXTFIELD Y JBUTTON Una aplicación sin usar Formulario A continuación vamos a desarrollar una aplicación sencilla que permita calcular el área del triángulo dado los valores
OBJETOS CONTENEDORES JPANEL Y JSCROLLPANEL
OBJETOS CONTENEDORES JPANEL Y JSCROLLPANEL Swing Containers Los objetos pertenecientes a Swing Containers, son objetos que permiten agrupar a otros objetos y facilitan el manejo de ciertos procesos dentro
I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein --Javier Navarro
I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein --Javier Navarro Lectura de Datos Dentro de un applet es sencillo tomar algún dato del usuario para realizar
CURSO DE GAMBAS 2.0.0
CURSO DE GAMBAS 2.0.0 (Nivel 2) Carúpano, Marzo de 2008 Programación En GAMBAS 2.0.0 1 USO DE CONTROLES MAS COMUNES LISTBOX: El control ListBox implementa una lista de items seleccionables. Para crear
Introducción a la Programación Orientada a Objetos
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI Ecapsulamiento, clases asociadas Dr. Luciano H. Tamargo http://cs.uns.edu.ar/~lt Depto. de Ciencias e Ingeniería de la Computación Universidad Nacional
Ingeniería del Software Separación entre Presentación y Lógica del Negocio
Introducción En este laboratorio desarrollaremos una aplicación que verifica si una cuenta y un password son correctos. En dicha aplicación la presentación y la lógica del negocio se definirán en dos capas
MP 0485 PRG Java 8 Netbeans 8.2 Swing [ Manual ]
1. Con la ayuda del IDE NetBeans, construir un proyecto de tpo Aplicación Java con Interfaz Gráfico de Usuario Swing llamado VentanaCentrada que muestre una ventana centrada en pantalla de un tamaño fio
Capítulo 7. Introducción a las Interfaces Gráficas de usuario. Continuar
Capítulo 7 Introducción a las Interfaces Gráficas de usuario Continuar Introducción Se explicará qué es una interfaz gráfica, cómo han evolucionado y cómo es que debe desarrollarse un programa que incluya
EJERCICIO GUIADO. JAVA: DISEÑO DE FORMULARIOS DESDE CÓDIGO
EJERCICIO GUIADO. JAVA: DISEÑO DE FORMULARIOS DESDE CÓDIGO La Ventana de Diseño La ventana de diseño es una gran herramienta que nos permite diseñar formularios de forma relativamente sencilla. Simplemente
d) Mencione dos diferencias y dos semejanzas entre clases abstractas e interfaces.
Primer Certamen 1er. Sem 2004 Todas las preguntas tienen igual puntaje. 1. a) Usando los niveles de madurez definidos en CMM, qué nivel le corresponde a una empresa que se caracteriza por comprometer productos
2.1 Elementos gráficos en Java.
Practica0 de 1. Programa Java tipo consola public class Clase0 { public static void main(string[] args) { System.out.println("Hola Mundo"); System.out.println("Estamos en clase de Interfaces de Usuario");
Java es un lenguaje orientado a objetos, por lo que los objetos (las clases) son los elementos más importantes en el diseño y desarrollo de una
EVENTOS EN JAVA Java es un lenguaje orientado a objetos, por lo que los objetos (las clases) son los elementos más importantes en el diseño y desarrollo de una aplicación. También podemos afirmar que Java
INSTALACION Y PRUEBA DEL PLUGIN WindowBuilder para trabajar Swing en Eclipse
INSTALACION Y PRUEBA DEL PLUGIN WindowBuilder para trabajar Swing en Eclipse Por: María Consuelo Franky 2015 Contenido 1. Instalación para Eclipse 4.3 Kepler... 1 2. Prueba inicial del plugin WindowBuilder...
Uso de Java Swing. Noviembre de 2013
Uso de Java Swing Noviembre de 2013 Introducción Esta lección les dará la oportunidad de introducirlos al manejo de la clase Swing. Despues de explicar en que consiste Swing, veremos como compilar y correr
Programación basada en eventos Event- Based Programming : Conceptos. ELO329: Diseño y Programación Orientados a Objetos
Programación basada en eventos Event- Based Programming : Conceptos ELO329: Diseño y Programación Orientados a Objetos Nuevo paradigma de programación En la programación basada en eventos (o programación
Programación Orientada a Objetos. Componentes Gráficos
Programación Orientada a Objetos Componentes Gráficos César Julio Bustacara Medina Facultad de Ingeniería Pontificia Universidad Javeriana 03/05/2016 1 Ejemplo Práctico Programa que permite incrementar
USO DEL OBJETO JLIST
USO DEL OBJETO JLIST Objeto de Control JList Un objeto de control Jlist permite dibujar en el formulario una caja de lista de opciones (ítems). Cuando el formulario se encuentra en la etapa de ejecución
Java Avanzado Facultad de Ingeniería. Escuela de computación.
2 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 7 3 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo de sus prácticas
Introducción a componentes Swing
Introducción a componentes Swing H. Tejeda Mayo 2016 Índice 1. Introducción 1 2. Clase JFrame 2 3. Clase JLabel 6 4. Manejador de diseño 9 5. Extensión de la clase JFrame 11 6. Clases de entrada 13 7.
1 AVANCE DEL PROYECTO PARA TEORIA DE LA COMPUTACION NOMBRE DEL PROYECTO: SIMULADOR DE AUTOMATAS FINITOS (SAF) OBJETIVO:
1 AVANCE DEL PROYECTO PARA TEORIA DE LA COMPUTACION NOMBRE DEL PROYECTO: SIMULADOR DE AUTOMATAS FINITOS (SAF) OBJETIVO: DEMOSTRAR EL FUNCIONAMIENTO Y APLICACION DE LOS AUTOMATAS AL PUBLICO EN GENERAL MEDIANTE
Interfaces Gráficas de Usuario en Java Julio 2004. 1. Introducción. 2. Crear una ventana 2
Índice 1. Introducción 1 2. Crear una ventana 2 3. Componentes swing 5 3.1. JPanel y JLabel......................................................... 6 3.2. ImageIcon............................................................
Interfaces gráficas con Swing
Interfaces gráficas con Swing Java y Servicios Web I Master en Ingeniería Matemática Manuel Montenegro Dpto. Sistemas Informáticos y Computación Desp. 467 (Mat) [email protected] Introducción Swing
Introducción a Swing. Taller de Programación 2016
Introducción a Swing Taller de Programación 2016 [email protected] Introducción En qué estamos exactamente? Cómo debemos codificar? Por donde empezar? Empecemos por entender el contexto y la arquitectura
Algoritmia y Programación
Algoritmia y Programación Oscar Bedoya [email protected] http://eisc.univalle.edu.co/~oscarbed/algoritmia/ Cuántos botones se necesitan? import javax.swing.*; import java.awt.*; import
Programación basada en/dirigida por eventos Event-Based Programming : Conceptos (o Event-driven Programming)
Programación basada en/dirigida por eventos Event-Based Programming : Conceptos (o Event-driven Programming) ELO329: Diseño y Programación Orientados a Objetos Nuevo paradigma de programación En la programación
Interfaz Gráfica de Usuario (GUI)
Interfaz Gráfica de Usuario (GUI) Unidad: 2 Laboratorio de Programación Universidad Nacional de la Patagonia Austral Unidad Académica Río Gallegos Indice Los administradores de diseño (Layouts) Características
EJERCITACIÓN JAVA CÁTEDRA DE LENGUAJES ORIENTADOS A OBJETOS. Ing. Mario Bressano & Luciano Diamand ENVÍO RESUELTO 05
EJERCITACIÓN JAVA 2013 CÁTEDRA DE LENGUAJES ORIENTADOS A OBJETOS Ing. Mario Bressano & Luciano Diamand ENVÍO RESUELTO 05 Ejercicio 48: Dada la siguiente serie, confeccionar una aplicación donde ingresada
GUÍA DE LABORATORIO 5 ARREGLOS DE UNA DIMENSIÓN
GUÍA DE LABORATORIO 5 ARREGLOS DE UNA DIMENSIÓN INTRODUCCION Un arreglo es una colección de variables del mismo tipo, referidos por un nombre común. En Java, los arreglos tienen una o más dimensiones,
Interfaces gráficas en Java GUIs Graphical User Interface
Diseño Y Aplicaciones de Sistemas Distribuidos Interfaces gráficas en Java GUIs Graphical User Interface Joan Vila DISCA / UPV Departament d Informàtica de Sistemes i Computadors Universitat Politècnica
Transparencias de Java. Tema 7: AWT. Uploaded by Ingteleco
Transparencias de Java Tema 7: AWT Uploaded by Ingteleco http://ingteleco.webcindario.com [email protected] La dirección URL puede sufrir modificaciones en el futuro. Si no funciona contacta por
CAPITULO 11. CONSTRUIR INTERFACES GRAFICAS DE USUARIO
CAPITULO 11. CONSTRUIR INTERFACES GRAFICAS DE USUARIO 11.1 Introducción La Interfaz de usuario, es la parte de una aplicación que está visible en la pantalla y que permite que un usuario interactúe con
INTERFAZ GRÁFICO DE USUARIO
Programación JAVA INTERFAZ GRÁFICO DE USUARIO 2 - Referencia Bibliográfica Autor Adolfo Aladró García Publicado en la revista Solo Programadores num. 118 Ejemplos copiados del libro Java 2 - Curso de Programación
Conocimientos previos
Tema: Conociendo el editor VBA Ficha de aprendizaje 3 n Logro Reconoce las funciones de Visual Basic Identifica las herramientas del entorno de VBA @ # Conocimientos previos Qué elementos (controles) puedes
Interfaces gráficas de usuario
Las interfaces gráficas de usuario Interfaces gráficas de usuario Hasta ahora hemos desarrollado programas que usan la consola para interactuar con el usuario. Esa forma de interfaz de usuario es muy simple
Manual del Usuario del Aplicativo FON. Manual del Usuario. Aplicativo de Funciones Obstétricas y Neonatales. Edgar Velásquez P.
1 Manual del Usuario Aplicativo de Funciones Obstétricas y Neonatales Edgar Velásquez P. 1 1 1 Introducción: Este capítulo provee información general acerca del Aplicativo de Funciones Obstétricas y Neonatales,
Utiliza el mismo modelo empleado por Graphics Para usarlo. java.awt.geom formas primitivas
java.awt.graphics2d Utiliza el mismo modelo empleado por Graphics Para usarlo public void paint(graphics g) { Graphics2D g2 = (Graphics2D) g;... java.awt.geom formas primitivas Arc2D Ellipse2D QuadCurve2D
USO DEL OBJETO JTABLE
USO DEL OBJETO JTABLE Objeto de Control JTable Como programadores, sabemos muy bien que la presentación de datos tabulados es una de las tareas más comunes que se presentan al momento de crear interfaces
SWING: JButton, JCheckBox y JRadioButton Javier Ovejero Sánchez
SWING: JButton, JCheckBox y JRadioButton Javier Ovejero Sánchez Departamento de Informática y Automática Universidad de Salamanca Resumen Las interfaces graficas de usuario se han convertido en una parte
Programación interactiva. Oscar Bedoya [email protected]
Programación interactiva Oscar Bedoya [email protected] El lenguaje de programación Importancia del lenguaje Java Correspondencia directa con el mundo real (compuesto de objetos) Permite implementar
Desarrollando aplicaciones mediante componentes
Desarrollando aplicaciones mediante componentes I.03 Captura de eventos 1) Planteamiento: Desarrollar una aplicación en Swing que capture varios eventos en swing tales como el Clic, el doble Clic, movimiento
APELLIDOS:... NOMBRE:... GRUPO:... NÚMERO DE EXPEDIENTE:...
Cuadernillo de examen ASIGNATURA Laboratorio de Sistemas Operativos Abiertos (Java) CÓDIGO 321 CONVOCATORIA Extraordinaria de Septiembre de 2003 PLAN DE ESTUDIOS 1996 ESPECIALIDAD Sistemas CURSO 2002/2003
Tema 6. Interfaces gráficas de usuario (Parte 1)
Programación en Java Tema 6. Interfaces gráficas de usuario (Parte 1) Luis Rodríguez Baena Facultad de Informática Swing y AWT (I) JDK 1.0 introdujo la creación de interfaces gráficas de usuario (GUI,
2017 CÁTEDRA DE LENGUAJE DE PROGRAMACIÓN JAVA
CÁTEDRA DE LENGUAJE DE PROGRAMACIÓN JAVA Ings. Mario Bressano & Miguel Iwanow ENVÍO 07/2017 EJERCICIO Nº 58 En este ejercicio se aprecia cómo se obtiene las coordenadas del mouse cuando se acciona y que
Agentes con Interfaz Gráfica.
Agentes con Interfaz Gráfica. Hasta este momento los talleres que se habían desarrollado contaban con una interfaz gráfica muy limitada. Pero en la mayoría de los sistemas multiagente debe existir una
PROGRAMACIÓN VISUAL E.A.P. SISTEMAS E INFORMATICA UNIVERSIDAD NACIONAL DEL SANTA CURSO: MICROCOMPUTACION III FACULTA DE INGENIERIA.
PROGRAMACIÓN VISUAL En el mundo moderno, las necesidades de información se han incrementado bastante en la vida diaria de los individuos así como de las organizaciones. Esta nueva necesidad se esta cubriendo
Manual del Usuario de Microsoft Access Formularios - Página 1. Tema V: Formularios. V.1. Creación de un Formulario
Manual del Usuario de Microsoft Access Formularios - Página 1 Tema V: Formularios V.1. Creación de un Formulario Un formulario es un diseño que permite introducir, cambiar y ver los registros de una base
Personalizar barras de herramientas
Personalizar barras de herramientas 289 Personalizar barras de herramientas Contenido Barras de herramientas Creación de barras de herramientas Establecer propiedades a la barra de herramientas Agregar
Tema 6. Interfaces gráficas de usuario
Tema 6. Interfaces gráficas de usuario Dpto. Lenguajes y Ciencias de la Computación. E.T.S.I. Informática. Universidad de Málaga Programación Orientada a Objetos Dpto. Lenguajes y Ciencias de la Computación.
UNIDAD I.- Elementos de Interfaces Gráficas
UNIDAD I.- Elementos de Interfaces Gráficas LECCIÓN 1.4.- Componentes Swing 1.4.1.- Componentes Gráficos de Swing Los componentes gráficos de Swing se puede agrupar en: Clases básicas Contenedores de alto
