Programación de Interfaces Gráficas en Java

Slides:



Advertisements
Presentaciones similares
Iniciación al Power Point
Advertisements

Programación “Conducida por eventos” Event-driven programming
Arquitectura CLARO-TECNOTREE
Java Applets Ing. Martín Jiménez.
Programación Orientada a Objetos
Abstract Window Toolkit (AWT) y Java Swing
Aplicación del paradigma orientado a objetos
DIAGRAMAS DE CLASES Completando los diagramas de interacción, es posible identificar la especificación de las clases que participarán en la solución indicando.
Algoritmo y Estructura de Datos I I Facultad de Ingeniería y Arquitectura Ing. Juan José Montero Román. Sesión 12 - Introducción.
DIAGRAMA DE COMPONENTES INTEGRANTES Córdova Vásquez Giovanny Escobar Alvares Calixto Gomez Quinteros Adelaida Pinto Flores Yarmila.
Qué es una ventana En informática, una ventana es un área visual, normalmente de forma rectangular, que contiene algún tipo de interfaz de usuario, mostrando.
En esta fase del editor de texto mostraremos los avances que ha obtenido el equipo a lo largo de estas semanas. Así como las clases, eventos, botones,
Programación “Conducida por eventos” Event-driven programming Agustín J. González ELO330.
Aplicaciones GUI en Java
Algunas Herramientas de Apoyo al Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos.
UNIDAD 2 CLASES Y OBJETOS. CLASE Elementos cabecera y cuerpo de la clase. Cabecera: aporta información fundamental sobre la clase en sí y constituye de.
Visualizador de imágenes remotas Alumno: Juan Pablo García Ortíz Director: Vicente Gonzalez Ruiz.
ENTORNO GRÁFICO DE VISUAL BASIC 2013
1 TEMA 1. Diseño de interfaces gráficas 1.Introducción 2.Componentes de la interfaz 3.Programación dirigida por eventos 4.Gestores de ubicación 5.Primitivas.

:: Prof. Yeniffer Peña Programación I Interface Gráfica de Usuario Presentación.
Agustín J. González ELO329/ELO330
Contenido: 1- Que es el .Net Framework 2- Arquitectura en .Net
OOP GUI Systems Parte 2 Info 033. Algunas cosas útiles Antes de continuar creen un nuevo proyecto con estructura similar a la anterior para seguir trabajando.
EI, Profesor Ramón Castro Liceaga Agosto de 2005 UNIVERSIDAD LATINA (UNILA) PROGRAMACION ORIENTADA A OBJETOS EN JAVA (Optativa) PROGRAMACION DE INTERFASES.
Curso de Java La tecnología Java
Programación Orientada a Objetos
Manejo de Punteros y objetos en memoria dinámica en C++
Hermilia Molina Acevedo
Algunas Herramientas de Apoyo al Análisis y Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos.
Visual Basic.
Diagrama de Clases ACI 570.
Interfaces y Clases Internas ELO329: Diseño y Programación Orientados a Objetos.
AWT y Swing Existen dos conjuntos basicos de componentes. Para crear aplicaciones graficas o GUI AWT abstract Window Toolkit Swing.
Interfaces ELO329: Diseño y Programación Orientados a Objetos.
Programación basada en eventos “Event-Based Programming”: Conceptos
1 Programación “Conducida por eventos” Event-driven programming Agustín J. González ELO329/ELO330.
1 Interfaces y Clases Internas ELO-329: Diseño y programación orientados a objetos Agustín J. González.
Algunas Herramientas de Apoyo al Diseño de Software Agustín J. González ELO329: Diseño y programación orientados a objetos.
Java Archives: jar Agustín J. González ELO-329. ELO-329: Diseño y Programación Orientados a Objetos2 Java Archives Como hemos visto la compilación crea.
Clases y Objetos en Java ELO329: Diseño y Programación Orientados a Objetos.
Programación Gráfica Agustín J. González ELO329/ELO330.
Herencia. Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente, estamos re-usando.
Un editor de texto es un programa que permite crear y modificar archivos digitales compuestos únicamente por texto sin formato, conocidos comúnmente como.
:: Prof. Yeniffer Peña Programación I Interface Gráfica de Usuario Presentación.
Presentado por: PABLO ANDRES DIAZ SAIN HASSAM CAICEDO
LE, EI, Profesor Ramón Castro Liceaga UNIVERSIDAD LATINA (UNILA) LENGUAJES DE PROGRAMACIÓN PARA EL DESARROLLO DE INTERFACES.
Java Applets como ejemplo de “Framework” Agustín J. González ELO-329.
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de: material asignatura CS169,Software Engineering,
Programación de Interfaces Gráficas en Java
Ing. Esp. Ricardo Cújar. SWING  Paquete de Java que permite el desarrollo de interfaces gráficas de usuario.  Api Swing, es sumamente flexible y se.
22/11/2005 E.T.S de Ingenieros de Telecomunicación - UPNA.1 AWT ABSTRAC WINDOW TOOLKIT.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI.
Ing. Johanna Macias Algoritmo, Estructura y Programación III.
M.C. Meliza Contreras González.  Se le llama interfaz gráfica al conjunto de componentes gráficos(ventanas, botones, combos, listas, cajas de dialogo,
Diagrama de Clases.
Ingeniería de Software Agustín J. González ElO329: Diseño y Programación Orientados a Objeto Adaptado de:
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.
DIAGRAMAS DE SECUENCIA. UML está compuesto por los siguientes diagramas:
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS GUI.
Escuela Superior Politécnica de Chimborazo Facultad de Administración de Empresas Escuela de Ingeniería en Marketing Jonathan Yamasca Tercero 2.
Programación de Interfaces Gráficas en Java Objetivo: Programar aplicaciones con interfaces gráficas usando objetos gráficos de Swing y definidos por.
Programación de Interfaces Gráficas en Java
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS
Programación de Interfaces Gráficas en Java
Programación de Interfaces Gráficas en Java
Interfaces Gráficas de Usuario
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.
Transcripción de la presentación:

Programación de Interfaces Gráficas en Java Agustín J. González ELO329/ELO330

ELO-329: Diseño y Programación Orientados a Objetos AWT y Swing En sus orígenes Java introdujo la AWT (Abstract Window Toolkit). Ésta “creaba” los objetos delegando su creación y comportamiento a herramientas nativas de la plataforma donde corre la Máquina Virtual Java. Este esquema condujo a problemas por diferencias en distintas plataformas y S.O. La solución fue desarrollar todos los objetos de la GUI basados sólo en elementos muy básicos y comunes en todas las plataformas. Así surge Swing. (Ver demo de la JFC en /usr/local/jdk/demo/jfc/SwingSet2 en aragorn o en su versión de Java)‏ Para correr los demos de Java, éstos deben ser instalados. Ver la carpeta que contiene el ejecutable javac y podrá encontrar el directorio demo un nivel más arriba. ELO-329: Diseño y Programación Orientados a Objetos

Desplegando información Todos los objetos gráficos en una aplicación Java forman una jerarquía en donde la mayor jerarquía está un JFrame, un JDialog, o un JApplet. Ahora veremos la estructura de los JFrame. Ejemplo: Frame Menu Bar Content Pane con un label ELO-329: Diseño y Programación Orientados a Objetos

Estructura de un JFrame El RootPane viene con el JFrame. También lo traen los JInternalFrame y los otros contenedores de ventanas superiores (autónomas): JDialog, JApplet, JFrame. El root pane tiene 4 partes: vidrio, panel de capas, panel de contenido, y una barra de menú opcional. ELO-329: Diseño y Programación Orientados a Objetos

ELO-329: Diseño y Programación Orientados a Objetos Panel de vidrio Oculto por omisión (defecto). Si se hace visible, es como una hoja de vidrio sobre todos las partes del panel raíz. Es transparente, a menos que se implemente un método para pintarlo. Puede intercepta los eventos de la ventana panel de contenido y menú. Ver GlassPaneDemo.java ELO-329: Diseño y Programación Orientados a Objetos

Layered Pane (panel de capas múltiples)‏ Contiene la barra de menú opcional y el panel para poner contenidos. Puede también contener otras componentes en orden especificado por eje Z (profundidad). Ver más detalles en curso tutorial de Swing Ver LayeredDemo.java ELO-329: Diseño y Programación Orientados a Objetos

Menús (así es en plural) Algunos elementos de un menú JMenuBar JMenu JMenuItem JMenu JMenuItem ELO-329: Diseño y Programación Orientados a Objetos

ELO-329: Diseño y Programación Orientados a Objetos Menús: Ejemplo Crear un frame Crear un menubar Crear a un menu Crear algunos itemes del menu Capturar eventos Agregar item al menu Agregar el menu al menubar Incorporar el menubar Por ejemplo de menú más completo ver: MenuDemo.java JFrame f = new JFrame(“MenuT”); JMenuBar mb = new JMenuBar(); JMenu menu = new JMenu(“Choose”); JMenuItem item1, item2; item1 = new JMenuItem(“Data 1”); item2 = new JMenuItem(“Data 2”); // Action listeners!! menu.add(item1); menu.add(item2); mb.add( menu ); f.setJMenuBar( mb ); ELO-329: Diseño y Programación Orientados a Objetos

Pintado de Componentes En general hay que tratar de usar componentes estándares de Swing. Ellas se encargan de hacer su (re)pintado en pantalla cuando corresponda. Este es el caso de Labels, buttons, componentes de texto, icons, borders. Si luego de hacer visible una componente, ésta se modifica considerar el llamado a validate(). Con esto estamos pidiendo que se actualice su despliegue. Ver CreaBotones.java Cuando la interfaz posee objetos “dibujados” por la aplicación, considere redefinir el método: protected void paintComponent(Graphics). Éste es invocado cada vez que una componente gráfica requiere ser re-pintada. ELO-329: Diseño y Programación Orientados a Objetos

ELO-329: Diseño y Programación Orientados a Objetos Método: repaint Cuando una componente cambia alguno de sus atributos, por ejemplo un label cambia su texto, este método es invocado por la componente sobre un panel (en rigor sobre una instancia JComponent) que lo contiene. Se consigue así itinerar el repintado de las componente gráficas. Si por el contrario, la hemos construido nosotros en base a líneas, etc. debemos llamar a repaint() para solicitar al panel el llamado a paintComponent en forma explícita. Ver ejemplo: Sketch.java y MouseTest.java ELO-329: Diseño y Programación Orientados a Objetos

ELO-329: Diseño y Programación Orientados a Objetos Método: repaint Diagrama de secuencia para repintado. Objeto gráfico propio Contenedor de Objetos Gráficos Hay un Cambio en datos repaint La JVM detecta necesidad de refresco paintComponent ELO-329: Diseño y Programación Orientados a Objetos

ELO-329: Diseño y Programación Orientados a Objetos Java 2D Java 2D provee gráficos, texto, e imágenes de dos dimensiones a través de extensiones de Abstract Windowing Toolkit (AWT)‏ Incluye clases para Rectángulos, Líneas, Elipses. La clase Graphics2D, a través de su método draw, permite dibujar estos objetos debido a que todos ellos implementan la interfaz shape. Ver demo: ShapesDemo2D.java ELO-329: Diseño y Programación Orientados a Objetos