INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS

Slides:



Advertisements
Presentaciones similares
Programación “Conducida por eventos” Event-driven programming
Advertisements

Abstract Window Toolkit (AWT) y Java Swing
Programación “Conducida por eventos” Event-driven programming Agustín J. González ELO330.
Agustín J. González ELO329/ELO330
EI, Profesor Ramón Castro Liceaga Agosto de 2005 UNIVERSIDAD LATINA (UNILA) PROGRAMACION ORIENTADA A OBJETOS EN JAVA (Optativa) PROGRAMACION DE INTERFASES.
Interfaces Graficas Profesor: Rodrigo Cruzat. Contenedores La ventana misma, que contiene botones, texto, etc… y donde se realizará la interacción JFrame.
1 Programación “Conducida por eventos” Event-driven programming Agustín J. González ELO329/ELO330.
Programación de Interfaces Gráficas en Java
Programación Gráfica Agustín J. González ELO329/ELO330.
:: Prof. Yeniffer Peña Programación I Interface Gráfica de Usuario Presentación.
Programación de Interfaces Gráficas en Java
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI.
1 Programación “Conducida por eventos” Event-driven programming Agustín J. González ELO329/ELO330.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI.
:: Prof. Yeniffer Peña Programación I Interface Gráfica de Usuario Presentación.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Herencia.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Herencia.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Objetos.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Sonia.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Sonia.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
Programación de Interfaces Gráficas en Java
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
Exception Object Throwable Error Exception Runtime Exception.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
IPOO 2 cuatrimestre 2017 Departamento de Ciencias e Ingeniería
IPOO 2 cuatrimestre 2017 Departamento de Ciencias e Ingeniería
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
Sonia Rueda Herencia y Polimorfismo
Interfaces Gráficas de Usuario
Interfaces Gráficas de Usuario
Programación Orientada a Objetos
INSTITUTO TÉCNOLOGICO SUPERIOR DE LIBRES
Interfaces Gráficas de Usuario
Programación Orientada a Objetos
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INSTITUTO TECNOLÓGICO SUPEROR DE LIBRES INGENIERÍA EN SISTEMAS COMPUTACIONALES TÓPICOS AVANZADOS ING.ELIZABETH DIAZ OREA 4° SEMESTRE INTEGRANTES: ESMERALDA.
INSTITUTO TÉCNOLOGICO SUPERIOR DE LIBRES
Componentes básicos ComponenteDescripción JLabel  Permite agregar texto no editable, o incluso imágenes. JTextField  Permite al usuario ingresar texto.
ENTORNO GRÁFICO DE VISUAL ESTUDIO
Interfaces Gráficas de Usuario
IPOO 2 cuatrimestre 2018 Departamento de Ciencias e Ingeniería
Interfaces Gráficas de Usuario
IPOO 2 cuatrimestre 2018 Departamento de Ciencias e Ingeniería
Clases Asociadas y encapsulamiento
String, random y stream en java
IPOO 2 cuatrimestre 2018 Departamento de Ciencias e Ingeniería
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
Programación de Interfaces Gráficas en Java Objetivo: Programar aplicaciones básicas con interfaces gráficas usando objetos gráficos de Swing y definidos.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
Transcripción de la presentación:

INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI Frames y Etiquetas 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 2017

INTERFACES GRÁFICAS DE USUARIO Una interfaz es un medio que permite que dos entidades se comuniquen. En una interfaz de usuario una de las entidades es una persona y la otra un sistema que el usuario intenta controlar. Las interfaces gráficas de usuario (GUI) explotan la capacidad de las computadoras para reproducir imágenes y gráficos en pantalla y brindan un ambiente más amigable, simple e intuitivo. Introducción a la Programación Orientada a Objetos IPOO - 2017

INTERFACES GRÁFICAS DE USUARIO interfaz: medio de comunicación entre entidades. gráfica: incluye ventanas, menúes, botones, texto, imágenes. usuario: persona que usa la interfaz para controlar un sistema. Introducción a la Programación Orientada a Objetos IPOO - 2017

INTERFACES GRÁFICAS DE USUARIO Íconos Ventanas Menúes desplegables Hipertexto Manipulación basada en arrastrar y soltar Las GUI reemplazaron a las interfaces de líneas de comandos en la cuales el usuario interactuaba con el sistema a través de una consola. En una GUI la interacción se realiza a través de: Introducción a la Programación Orientada a Objetos IPOO - 2017

INTERFACES GRÁFICAS DE USUARIO Una GUI se construye a partir de una colección de componentes con una representación gráfica. Algunas componentes tienen la capacidad para percibir eventos generados por las acciones del usuario y reaccionar en respuesta a ese evento. La creación de componentes reactivas requiere que el lenguaje brinde algún mecanismo para el manejo de eventos. Las GUI reemplazaron a las interfaces de líneas de comandos en la cuales el usuario interactuaba con el sistema a través de una consola. En una GUI la interacción se realiza a través de: Introducción a la Programación Orientada a Objetos IPOO - 2017

ICONOS Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Introducción a la Programación Orientada a Objetos IPOO - 2017

MENÚES DESCOLGABLES Introducción a la Programación Orientada a Objetos IPOO - 2017

PAQUETES GRÁFICOS Para la implementación de GUI en Java usaremos los paquetes gráficos SWING y AWT. Un paquete gráfico brinda clases gráficas generales a partir de las cuales es posible crear objetos gráficos o bien definir nuevas clases más específicas para crear luego objetos de estas clases. Desde sus inicios el entorno Java brindó una biblioteca de componentes gráficas llamada Abstract Window Toolkit (AWT) con el objetivo de favorecer el desarrollo de interfaces gráficas de usuario, independientes de la plataforma. Posteriormente se desarrolló una nueva biblioteca llamada Swing con mayor capacidad de personalización y portabilidad. Esto es, el programador puede establecer la apariencia de las componentes, de modo que el estilo sea uniforme del sistema operativo subyacente. Swing no reemplaza a AWT sino que la extiende. Introducción a la Programación Orientada a Objetos IPOO - 2017

OBJETOS GRÁFICOS Y CLASES GRÁFICAS Algunos objetios gráficos son contenedores de otros objetos gráficos. Un contenedor tiene atributos especiales como por ejemplo el diagramado de acuerdo al cual se organizan las componentes contenidas. Una ventana es un contenedor de alto nivel. Un frame es un tipo especial de ventana sobre el que puede ejecutarse una aplicación. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y FRAMES import javax.swing.*; class PrimerEjemplo{ public static void main(String args[]){ JFrame f = new JFrame("Mi Primera GUI"); } Crea un objeto gráfico de la clase JFrame provistas por el paquete Swing de Java. El parámetro es el valor del atributo título. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y FRAMES import javax.swing.*; class PrimerEjemplo{ public static void main(String args[]){ JFrame f = new JFrame("Mi Primera GUI"); f.setSize(400, 300) ; f.setVisible(true) ; } Se establecen los valores de dos de los atributos del frame: dimensión y visibilidad. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y FRAMES import javax.swing.*; class PrimerEjemplo{ public static void main(String args[]){ JFrame f = new JFrame("Mi Primera GUI"); f.setSize(400, 300) ; f.setVisible(true) ; } Un objeto de clase JFrame contiene a otras componentes gráficas: barra de título, borde, tres botones y un panel de contenido. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y FRAMES import javax.swing.*; class SegundoEjemplo{ public static void main(String args[]){ MiVentana f = new MiVentana(); } Crea un objeto de la clase MiVentana que extiende a JFrame provista en el paquete Swing. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y FRAMES import javax.swing.*; class SegundoEjemplo{ public static void main(String args[]){ MiVentana f = new MiVentana(); f.setVisible(true) ; } Le envía al objeto ligado a la variable f el mensaje setVisible heredado por la clase MiVentana. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y FRAMES import java.awt.*; import javax.swing.*; class MiVentana extends JFrame{ public MiVentana() { super("Mi Segunda GUI"); } Invoca al constructor de la clase JFrame con la cadena que se establecerá como título en la barra de título. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y FRAMES import java.awt.*; import javax.swing.*; class MiVentana extends JFrame{ public MiVentana() { super("Mi Segunda GUI"); setSize(400, 300); } Envía un mensaje al frame para establecer su tamaño. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y FRAMES import java.awt.*; import javax.swing.*; class MiVentana extends JFrame{ public MiVentana() { super("Mi Segunda GUI"); setSize(400, 300); getContentPane().setBackground(Color.BLUE); } El mensaje getContentPane() obtiene el panel de contenido del frame, el objeto que retorna es de clase Container. Obtiene el atributo panel de contenido del frame y le envía un mensaje para establecer el color con la constante BLUE de la clase estática Color. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y FRAMES import java.awt.*; import javax.swing.*; class MiVentana extends JFrame{ public MiVentana() { super("Mi Segunda GUI"); setSize(400, 300); getContentPane().setBackground(Color.BLUE); setDefaultCloseOperation(EXIT_ON_CLOSE); } Establece que la aplicación termine cuando se cierre la ventana. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y ETIQUETAS Una etiqueta es un objeto gráfico pasivo que permite mostrar un texto y/o una imagen. En Java podemos crear una etiqueta definiendo un objeto de clase JLabel. Una etiqueta tiene atributos: tamaño, texto, imagen, alineación de la imagen y alineación del texto. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANAS Y ETIQUETAS import javax.swing.*; class VentanaEtiqueta extends JFrame{ //El atributo de instancia es un objeto gráfico private JLabel etiqueta; //Constructor public VentanaEtiqueta () { setSize(100, 120); etiqueta= new JLabel("Hola!"); getContentPane().add(etiqueta); setDefaultCloseOperation(EXIT_ON_CLOSE); } Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANA CON ETIQUETA import javax.swing.*; class GUI_Etiqueta { public static void main(String args[]){ VentanaEtiqueta f= new VentanaEtiqueta(); f.setVisible(true); } El objeto ligado a f tiene todos los atributos y servicios de la clase VentanaEtiqueta, JFrame y de sus ancestros en la jerarquía de herencia. Introducción a la Programación Orientada a Objetos IPOO - 2017

VENTANA CON ETIQUETA setSize(100, 120); Establece el tamaño del frame. etiqueta= new JLabel("Hola!"); Crea una etiqueta estableciendo su texto. getContentPane().add(etiqueta); Recupera el panel del contenido del frame e inserta en su interior la etiqueta. setDefaultCloseOperation(EXIT_ON_CLOSE); Establece terminar la aplicación cuando el usuario cierre la ventana. Introducción a la Programación Orientada a Objetos IPOO - 2017

ETIQUETA CON IMAGEN import javax.swing.*; public class EtiquetaConImagen extends JFrame{ private JLabel etiquetaBanda; public EtiquetaConImagen(String tit) { super(tit); setSize(400, 300); etiquetaBanda = new JLabel(“Los Piojos"); etiquetaBanda.setIcon (new ImageIcon(“piojo.jpg")); getContentPane().add(etiquetaBanda); setDefaultCloseOperation(EXIT_ON_CLOSE); } Introducción a la Programación Orientada a Objetos IPOO - 2017

ETIQUETA CON IMAGEN import javax.swing.*; class GUI_EtiquetaImagen{ public static void main(String args[]){ EtiquetaConImagen f = new EtiquetaConImagen(“Banda Nacional”); f.setVisible(true); } Introducción a la Programación Orientada a Objetos IPOO - 2017

ETIQUETA CON IMAGEN Un atributo de la clase JLabel es la imagen asociada a la etiqueta. Esa imagen puede establecerse usando el contenido de un archivo Otro atributo es el texto que acompaña a la imagen. Introducción a la Programación Orientada a Objetos IPOO - 2017

ETIQUETA CON IMAGEN Para que la etiqueta sea visible es necesario insertarla en el panel de contenido del frame. El panel de contenido es un objeto contenedor, en el que se insertan componentes gráficas usando el mensaje add. Introducción a la Programación Orientada a Objetos IPOO - 2017

ALINEAR TEXTO E ICONO /*Crea la etiqueta y establece la imagen y la alineación del texto y de la imagen*/ etiquetaBanda = new JLabel(“Los piojos"); etiquetaBanda.setIcon(new ImageIcon(“piojo.gif")); etiquetaBanda.setHorizontalAlignment(JLabel.CENTER); etiquetaBanda.setHorizontalTextPosition(JLabel.CENTER); etiquetaBanda.setVerticalTextPosition(JLabel.BOTTOM); /*Establece el color e inserta la etiqueta en el panel de contenido */ getContentPane().setBackground(Color.YELLOW); getContentPane().add(etiquetaBanda); Introducción a la Programación Orientada a Objetos IPOO - 2017

ALINEAR TEXTO E ICONO Un objeto de clase JLabel tiene un atributo que establece la alineación de la imagen y otro que establece la alineación del texto. El panel de contenido es un atributo de instancia del frame y tiene a su vez atributos, como el color, que pueden modificarse. Introducción a la Programación Orientada a Objetos IPOO - 2017