Interfaces gráficas de usuario



Documentos relacionados
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)

Tema 6. Interfaces gráficas de usuario (Parte 1)

Indice. Swing: conceptos. Generalidades. Swing & AWT: diferencias. Interfaz Gráfica de Usuario (GUI)

Interfaces gráficas. Jose Jesus García Rueda

Programación Avanzada Ingeniería Civil en Computación

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

CURSO: Programación de Aplicaciones en Lenguaje JAVA

Interfases gráficas. Programación Orientada a Objetos.

USO DE LOS OBJETOS JLABEL, JTEXTFIELD Y JBUTTON

Componentes Swing look and feel pluggable ( mecanismo de double buffering, transparentes.

3URJUDPDFLyQ-DYD. 3UiFWLFD. -DYLHU *DUFtD GH -DOyQ Â -RVp,JQDFLR 5RGUtJXH] $OIRQVR %UD]iOH] Â $OEHUWR /DU]DEDO Â -HV~V &DOOHMD Â -RQ *DUFtD

Aplicaciones gráficas en Java Librería Swing

Operación de Microsoft Excel

Uso de Java Swing. Noviembre de 2013

Programación Orientada a Objetos en Java

La pestaña Inicio contiene las operaciones más comunes sobre copiar, cortar y pegar, además de las operaciones de Fuente, Párrafo, Estilo y Edición.

I. Introducción a la programación orientada a objetos y al lenguaje JAVA Colegio Reuven Feuerstein Javier Navarro

PROGRAMACIÓN WEB I SEMANA 7 ESTE DOCUMENTO CONTIENE LA SEMANA 7

Estructura de las Aplicaciones Orientadas a Objetos El patrón Modelo-Vista-Controlador (MVC)

Tema 7. Construcción de Applets en Java

Programación Orientada a Objetos con Java

INTERFAZ GRÁFICO DE USUARIO

Manejo de eventos AWT

Bases de datos en Excel

JAVA 8 Los fundamentos del lenguaje Java (con ejercicios prácticos corregidos)

Trabajando con GUI en Java Componente java.swing

PowerPoint 2010 Introducción a Microsoft Office PowerPoint 2010

Capitulo III. Diseño del Sistema.

Diseño de formularios

Las propiedades de la clase en java es el equivalente a las variables globales en lenguajes estructurados como el C.

CAPITULO 4. Requerimientos, Análisis y Diseño. El presente capítulo explica los pasos que se realizaron antes de implementar

Universidad Carlos III de Madrid Departamento de Ingeniería Telemática. Swing

Guía de Aprendizaje No. 1

Microsoft Office XP Access XP (III)

GUÍA DE LABORATORIO 5 ARREGLOS DE UNA DIMENSIÓN

Interfaces de usuario con

Programación orientada a objetos. Capítulo 11 Construir interfaces gráficas de usuarios

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

Formularios. Formularios Diapositiva 1

Trabajando con GUI en Java Componente java.swing

Charla N 6: Utilidades de Consulta de datos.

Word XP (Continuación) Salto de página vs. Salto de Sección

2_trabajar con calc I

Guía de inicio rápido a

Paquetes de java. java.applet

Marta Soler Tel: Fax: TUTORIAL DEL GESTOR DE CONTENIDOS DOTNETNUKE

Programación Java Curso C Draw

Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA. Gráficos de Excel. Hojas de cálculo Tema 4

REGISTRAR LOS SITIOS WEB MÁS INTERESANTES

Interfaces gráficas con Swing

PowerPoint 2010 Modificar el diseño de las diapositivas

3_formato I. NOTA: al pegar unas celdas sobre otras no vacías, se borrará el contenido de estas últimas.

BUSINESS OBJECTS EDICIÓN DE REPORTES NIVEL II

Introducción a Swing. Taller de Programación 2016

Capítulo V. Implementación

Construir una Interfaz Gráfica

Tablas dinámicas TABLAS DINAMICAS EN MS EXCEL. Prof.: Wilber José Matus González

Sesión No. 4. Contextualización INFORMÁTICA 1. Nombre: Procesador de Texto

JAVA SE STANDARD EDITION

Excel 2010 Representación gráfica de datos

MICROSOFT WORD 2007 AVANZADO. Unidad Didáctica Nº 1

Diseño de una asignatura en la plataforma Moodle (CV)

SESIÓN 6 INTRODUCCIÓN A WORD.

INFORMATICA VISUAL BASIC 2008 GRAFICACIÓN I

LiLa Portal Guía para profesores

Introducción a Protégé

Administración de Clientes 4

Trabajar con diapositivas

La ventana de Microsoft Excel

Plataforma e-ducativa Aragonesa. Manual de Administración. Bitácora

TEMA 4: EMPEZANDO A NAVEGAR ESCUELA UNIVERSITARIA DE INFORMÁTICA. Raúl Martín Martín

Capítulo 1 Documentos HTML5

Operación de Microsoft Excel. Una lista o una base de datos de Microsoft Excel.

CREACIÓN DE UN INFORME

VAST: Manual de usuario. Autores: Francisco J. Almeida-Martínez Jaime Urquiza-Fuentes

ENTORNO DE DESARROLLO MICROSOFT.NET 2010

Race Manager by Master Timing Guía del usuario GUIA RACE MANAGER. Eventronic, SL

19. Packages o paquetes

2.2.- Paradigmas de la POO

Capítulo 2. Planteamiento del problema. Capítulo 2 Planteamiento del problema

Instrucciones para la elaboración de comunicaciones aceptadas en FORMATO PÓSTER

Partes de un programa en Java. A. Ejemplo de un Programa en Java /* Programa Ejemplo de Java: Muestra una Ventana Archivo: Ejemplo1.

Módulo 1 Sistema Windows. Explorador de Windows

Guía de Apoyo Project Professional

Tema 8. Creación y diseño de un sitio web

Apéndice 5 Manual de usuario de ColeXión. ColeXión 1.0. Manual de usuario

Elaborando WebQuest usando Power Point

Microsoft Access proporciona dos métodos para crear una Base de datos.

Ministerio de Educación. Diseño de Presentaciones en la Enseñanza. Módulo 9: Imprimir

MATERIAL 2 EXCEL 2007

BLOQUE VIII POWERPOINT

Agentes con Interfaz Gráfica.

Manual del Profesor Campus Virtual UNIVO

Excel 2010 Dar formato a la hoja de cálculo

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACIÓN

Transcripción:

Interfaces gráficas de usuario Presentación basada en: 1. Como Programar en Java. Deitel y Deitel. Ed. Prentice-Hall. 1988 2. Java, Curso de programación. Fco. Javier Ceballos. Ed. Alfoomega&RA-MA, 2003. 3. Apuntes del Curso Programación Orientado a Objetos. Pablo Castells. Escuela Politécnica Superior, Universidad Autonoma de Madrid. 4. Apuntes del Curso de java. Luis Hernández y Carlos Cervigón. Facultad de Informática. Universidad Católica de Madrid. NOTA: Estas diapositivas fueron montadas por Esmeide Leal. Monitor del curso de Objetos- Semetre 01-2005. Las interfaces gráficas de usuario Las interfaces gráficas de usuario (GUI) ofrecen al usuario ventanas, cuadros de diálogo, barras de herramientas, botones, listas desplegables y muchos otros elementos con los que ya estamos muy acostumbrados a tratar. Las aplicaciones son conducidas por eventos y se desarrollan haciendo uso de las clases que para ello nos ofrece la API de Java. 1

La API de Java para desarrollo de GUI La interfaz de usuario es la parte del programa que permite al usuario interaccionar con él. La API de Java proporciona una biblioteca de clases para el desarrollo de Interfaces gráficas de usuario (en realidad son dos). La biblioteca proporciona un conjunto de herramientas para la construcción de interfaces gráficas que tienen una apariencia y se comportan de forma semejante en todas las plataformas en las que se ejecuten. La estructura básica de la biblioteca gira en torno a componentes y contenedores. Los contenedores contienen componentes y son componentes a su vez, de forma que los eventos pueden tratarse tanto en contenedores como en componentes. La API está constituida por clases, interfaces y derivaciones. Las bibliotecas disponibles Cuando apareció Java, los componentes gráficos disponibles para el desarrollo de GUI se encontraban en una biblioteca conocida como Abstract Window Toolkit (AWT). AWT es adecuada para interfaces gráficas sencillas, pero no para proyectos más complejos. Al aparecer Java 2 la biblioteca AWT se reemplazó por otra biblioteca más robusta, versátil y flexible: Swing. Aunque AWT aún sigue estando disponible, e incluso es usada por los componentes de Swing. 2

Algunos componentes de AWT Swing Paquete de Java para la generación del GUI en aplicaciones reales de gran tamaño. Disponible como paquete externo en Java 1.1 e integrado desde Java 1.2. Es una de las API de JFC (Java Foundation Classes): AWT, Java 2D, Accessibility, Drag and Drop, Swing,... Escrito totalmente en Java. No reemplaza a AWT. Se apoya sobre AWT y añade JComponents. Utiliza el modelo de eventos de Java 1.1. Elección entre diferentes aspectos (look & feel). Arquitectura Model-View-Controller (MVC). Nuevos componentes (árboles, tablas, frames internos, iconos, bordes, tooltips, beans, etcétera). 3

Jerarquía de clases para las GUI Jerarquía de clases para las GUI Component: superclase de todas las clases de interfaz gráfica. Container: para agrupar componentes. JComponent: superclase de todos los componentes de Swing que se dibujan directamente en los lienzos (canvas). Sus subclases son los elementos básicos de la GUI. JFrame: ventana que no está contenida en otras ventanas. JDialog: cuadro de diálogo. JApplet: subclase de Applet para crear applets tipo Swing. JPanel: contenedor invisible que mantiene componentes de interfaz y que se puede anidar, colocándose en otros paneles o en ventanas. También sirve de lienzo. Graphics: clase abstracta que proporciona contextos gráficos donde dibujar cadenas de texto, líneas y otras formas sencillas. 4

Jerarquía de clases para las GUI Color: color de los componentes gráficos. Font: aspecto de los caracteres. FontMetrics: clase abstracta para propiedades de las fuentes. Categorías de clases: Contenedores: JFrame, JApplet, JWindow, JDialog Componentes intermedios: JPanel, JScrollPane Componentes: JLabel, JBbutton, JTextField, JTextArea,... Clases de soporte: Graphics, Color, Font,... Jerarquía de clases para las GUI: JComponent 5

Jerarquía de clases para las GUI: AWT Esquema de aplicación en Swing 6

Esquema de applet con Swing La Clase String - Cadena de Caracteres 7

JFrame Para mostrar una ventana en una posición concreta disponemos del método setlocation(x, y) de la clase JFrame. Cuando se crea un objeto JFrame, se crea un objeto Container (AWT). El objeto JFrame usa el panel de contenido (Container) para albergar los componentes del frame. 1. Obtenemos el panel de contenido del frame: Container panel = this.getcontentpane(); 2. Añadimos componentes a dicho panel: panel.add(uncomponente); Componentes en el JFrame 8

Administradores de disposición Los componentes se agregan al contenedor con el método add(). JButton unboton = new JButton("Texto del botón"); panel.add(unboton); El efecto de add() depende del esquema de colocación o disposición (layout) del contenedor que se use. Existen diversos esquemas de disposición: FlowLayout, BorderLayout, GridLayout,... Los objetos contenedores se apoyan en objetos LayoutManager (administradores de disposición). Clases más usadas que implementa la interfaz LayoutManager: FlowLayout: un componente tras otro de izquierda a derecha. BorderLayout: 5 regiones en el contenedor (North, South,...). GridLayout: contenedor en filas y columnas. Administradores de disposición 9

Organización de contenedores FlowLayout 10

BorderLayout GridLayout setlayout(new GridLayout(filas, columnas)) Crea una zona de filas x columnas componentes y éstos se van acomodando de izquierda a derecha y de arriba a abajo. GridLayout tiene otro constructor que permite establecer la separación (en pixels) ente los componentes, que es cero con el primer constructor. Así, por ejemplo: new GridLayout(3, 4, 2, 2) crea una organización de 3 filas y 4 columnas donde los componentes quedan a dos pixels de separación. Ejemplo: setlayout(new GridLayout(3, 4, 2, 2); for(int i = 0; i < 3 * 4; i++) { add(new JButton(Integer.toString(i + 1))); } 11

GridLayout Paneles como contenedores 12

Paneles como contenedores Paneles como contenedores 13

Dibujo de gráficos en paneles JPanel se puede usar para dibujar. Para dibujar en un panel se crea una clase derivada de JPanel y se redefine el método paintcomponent() que le indica al panel como dibujar. La clase Graphics es una clase abstracta para todos los contextos gráficos. Una vez obtenido el contexto gráfico podemos llamar desde este objeto a las funciones gráficas definidas en la clase Graphics. Graphics contiene información acerca de la zona que necesita ser redibujada: el objeto donde dibujar, un origen de traslación, el color actual, la fuente actual, etcétera. Ejemplo de dibujo 14

Dibujo de gráficos en paneles Cuando utilizamos el método paintcomponent() para dibujar en un contexto gráfico g, ese contexto es un ejemplar de una subclase concreta de la clase Graphics para la plataforma específica. El método paintcomponent() es llamado la primera vez y cada vez que es necesario redibujar el componente. Al hacer super.paintcomponent(g) nos aseguramos de que el área visualizada se limpia antes de volver a dibujar. class MiPanel extends JPanel { public void paintcomponent(graphics g) { super.paintcomponent(g); g.drawstring("interfaz gráfica", 40, 40); } } Ejemplo de dibujo 15

Algunos métodos de Graphics Graphics g;... g.setcolor(color.blue); g.setbackground(color.red); g.drawline(int x1, int y1, int x2, int y2); g.drawrect(int x, int y, int ancho, int alto); g.drawroundedrect(int x, int y, int ancho, int alto, int arcwidth, int archeight); g.fillrect(int x, int y, int ancho, int alto); g.fillroundedrect(int x, int y, int ancho, int alto, int arcwidth, int archeight); g.drawoval(int x, int y, int ancho, int alto); g.filloval(int x, int y, int ancho, int alto); g.drawarc(int x, int y, int ancho, int alto, int ang1, int ang2); g.drwastring(string cadena, int x, int y); g.setfont(font f);... Fuentes 16

Ejemplo 17