Está en la página 1de 7

UNIVERSIDAD ABIERTA Y A DISTANCIA DE MÉXICO

INGENIERÍA EN DESARROLLO DE SOFTWARE

ASIGNATURA:
PROGRAMACIÓN ORIENTADA A OBJETOS II

UNIDAD II: COMPONENTES GRÁFICOS

ACTIVIDAD 1: INTERFACES DE USUARIO

ALUMNO: SERGIO VARGAS OLIVARES


MATRICULA: ES1511108843

DOCENTE: MARIA DE LOURDES VILLANUEVA VEGA

División de Ciencias Exactas, Ingeniería y Tecnología


Los componentes gráficos son elementos que brindan una interacción con el usuario del
sistema, cada componente corresponde a una clase en Java, por esta razón cuando se crea
uno de estos elementos y queremos vincular uno de estos elementos simplemente instanciamos
la clase que necesitamos.

Ante la necesidad de crear una interfaz gráfica en Java surge la pregunta si utilizar AWT o
swing, a continuación, expongo similitudes y diferencias entre ambos:

AWT

AWT son las siglas de Abstract Window ToolKit, las herramientas originales de Java para crear
interfaces gráficas. Es una librería GUI portable para aplicaciones autónomas y/o applets,
proporciona la conexión entre nuestra aplicación y el GUI nativo.

Las prestaciones de AWT incluyen:

 Un amplio grupo de componentes de usuario


 Un modelo de manejo de eventos robusto
 Herramientas gráficas y de imágenes (clases de Formas, colores y fuentes)
 Manejadores de diseño que no dependen del tamaño de pantalla o resolución
 Clases de transferencia de datos, para copiar-pegar a través del portapapeles de la
plataforma

Los componentes de AWT dependen de componentes de código nativo, por lo que a los
componentes se les suele llamar “heavyweight components” (componentes pesados).
AWT está pensado para aplicaciones que corran en navegadores antiguos y definido con los
mínimos de cualquier aplicación, es por esto que no incluye componentes complejos como
pueden ser tablas, vistas de árbol, barras de progreso y otros.

La jerarquía de clases se representa mediante varios objetos de la clase, estos objetos


pertenecen a la clase que le anteceden:
La clase de los contenedores sirve para crear áreas en la ventana cuyo único fin es colocar
otras componentes en su interior. Hay dos tipos de contenedores:

 Panel: sirve para colocar botones, etiquetas, etc. En particular un applet es un panel.
 Window: sirve para crear nuevas ventanas independientes del browser Web. Es decir,
ventanas que serán manejadas por el administrador de ventanas de la plataforma. Una
ventana independiente puede ser:
 Frame es un tipo de ventana en donde se pueden colocar menús.
 Dialog es un tipo de ventana para dialogar con el usuario. Se usan para colocar botones,
etiquetes, etc. Es decir, cumple la misma función que un panel, pero en una ventana
independiente.
 FileDialog es un artefacto para que el usuario escoja un archivo.

Swing
Swing implementa un juego de componentes construidos sobre AWT y además proporciona un
“look and feel” conectable/intercambiable. Está escrito 100% en código Java y basado en el
framework Lightweight UI de la JDK 1.1.

Sus características incluyen:

 Todas las prestaciones de AWT


 Componentes 100% Java de las versiones de los componentes de AWT
 Un rico conjunto de componentes de alto nivel (listas en árbol, paneles de pestañas,
etc...)
 Un diseño Java puro, no depende de terceros.
 Look and feel intercambiable

Al no depender de componentes de la plataforma, a los componentes de swing se les llama


“lightweight components” (componentes ligeros). Swing se creó para solucionar muchas de las
limitaciones de AWT.

Contenedores: un contenedor es la base sobre la cual crearemos nuestros componentes


gráficos, existen contenedores principales, entre estos se encuentran JFrame y JDialog pero
también existen otros contendedores incluidos dentro de los mencionados:
 JFrame: es la Ventana de aplicación, el contenedor principal
 JDialog: una ventana de tipo Ventana de diálogo, también puede ser un contenedor
principal.
 JPanel: permite la creación de paneles independientes donde se almacenan otros
componentes.
 JScrollPane: permite la vinculación de barras de desplazamiento en un contenedor.
 JSplitPane: permite la creación de un contenedor dividido en 2 secciones.
 JTabbedPane: permite la creación de pestañas, cada pestaña representa un contenedor
independiente.
 JDesktopPane: permite crear ventanas dentro de una ventana principal
 JToolBar: permite introducir una Barra de herramientas

Componentes Atómicos: son los elementos que no pueden almacenar otros componentes:

 JLabel: permite Vincular Etiquetas, tanto de texto como de imágenes


 JButton: permite vincular Botones simples.
 JCheckBox: son Casilla de verificación, ideal para selección múltiples.
 JRadioButton: permite presentar opciones de selección similares a las checkbox, solo
que el enfoque de estas es de única selección.
 JToggleButton: botón que al oprimirlo se quedará presionado hasta que se ejecute otro
evento.
 JComboBox: permite mostrar una lista de elementos como un combo de selección.
 JScrollBar: permite mostrar una barra de desplazamiento, regularmente usada en Areas
de texto o paneles donde el contenido es mayor que el tamaño del componente.
 JSeparator: permite separar opciones, es una barra simple.
 JSlider: permite vincular un Deslizador en nuestra ventana.
 JSpinner: permite vincular una caja de texto con botones integrados para seleccionar
algún valor.
 JProgressBar: establece una barra de progreso.

Componentes de texto: son aquellos que nos permiten procesar cadenas de texto, sea como
entrada o salida de información.
 JTextField: permite introducir un campo de texto simple.
 JFormattedTextField: permite introducir un campo de texto con formato.
 JPasswordField: campo de texto que oculta los caracteres ingresados.
 JTextArea: permite vincular un área de texto donde el usuario ingresara información o
simplemente para presentar cadenas de texto.
 JEditorPane: permite vincular un área de texto con propiedades de formato.
 JTextPane: similar al anterior, permitiendo otras opciones de formato, colores, iconos
entre otros.

Componentes de menús: estos componentes permiten vincular opciones de menú en las


ventanas:

 JMenuBar: permite vincular una barra de menús.


 JMenu: permite vincular botones o enlaces que al ser pulsados despliegan un menú
principal.
 JMenuItem: botón u opción que se encuentra en un menú.
 JCheckBoxMenuItem: elemento del menú como opciones de checkbox.
 JRadioButtonMenuItem: elemento del menú como botón de selección.
 JPopupMenu: opciones de menú emergentes.

Componentes complejos: son componentes un poco más avanzados, cumplen con funciones
enfocadas a procesos específicos y complejos, como por ejemplo obtener gran cantidad de
información de una base de datos, trabajo con nodos, colores entre otros:

 JTable: permite vincular una tabla de datos con sus respectivas filas y columnas.
 JTree: carga un árbol donde se establece cierta jerarquía visual, tipo directorio.
 JList: permite cargar una lista de elementos, dependiendo de las propiedades puede
tenerse una lista de selección múltiple.
 JFileChooser: es un componente que permite la búsqueda y selección de ficheros entre
otras.
 JColorChooser: componente que permite cargar un panel selector de color
 JOptionPane: no es algo complejo sino más un componente independiente que permite
mostrar un cuadro de diálogo personalizable.

Dentro de estos componentes existe una jerarquía que tiene que ver con el tipo de componente
al que se refiere, para entenderlo mejor dejo una imagen sobre esta jerarquía:
Como podemos ver todos los componentes heredan de la clase java.swing, es importante
mencionar que swing es la evolución del AWT (Abstract Window Toolkit), la cual también es un
conjunto de librerías enfocadas a la construcción de interfaces, pero AWT presenta problemas
al ser usada en distintos sistemas operativos.
Bibliografía:

El kit gráfico: AWT. Recuperado de:


https://users.dcc.uchile.cl/~lmateu/Java/Apuntes/awt.htm

Aplicaciones Web, documento recuperado de:


https://www.fdi.ucm.es/profesor/jpavon/web/24-JavaScript.pdf

Bell, Douglas. & Parr, Mike. (2008). Java para Estudiantes. México: Pearson.

Componentes Java Swing. Recuperado de:


http://codejavu.blogspot.mx/2013/09/componentes-java-swing.html

Interfaces gráficas de usuario. Recuperado de:


http://www.fdi.ucm.es/profesor/jpavon/poo/2.11.gui.pdf

También podría gustarte