Ponentes y Librerias
Ponentes y Librerias
Ponentes y Librerias
Programación
Tema II
Componentes y Librerías
Componentes y librerías
java.awt.
java.swing.
Componentes
AWT
Depende de la plataforma, esto quiere decir que la
imagen que muestra un componente gráfico depende
de su ejecución en un sistema operativo o en otro.
Swing aparece en Java 2 y es independiente de la
plataforma sobre la que se ejecuta; con swing el
aspecto de los elementos de la interfaz gráfica es el
mismo en todas las plataformas.
Swing
Es el conjunto de clases, interfaces, recursos, etcétera, para la
construcción de gráficos, también conocidos como IGU o GUI;
contiene tres API: uno para 2D, otro para arrastrar y soltar y el
último para facilitar el acceso.
Jerarquía de componentes
Paquetes de las API de Java
import javax.swing.*
Si un programa incluye la declaración
import javax.swing.JFrame
únicamente se puede utilizar la clase JFrame.
Paquetes
El conjunto de paquetes de Java es muy grande, hay más de 200 disponibles en
Java SE API 6; cada uno está constituido por clases o interfaces; una lista genérica
de paquetes se encuentra en:
Hay definidos hasta siete tipos de layouts y son los siguientes: FlowLayout,
BorderLayout, GridLayout, BoxLayout, GridBagLayout, CardLayout y
SpringLayout;
BorderLayout
Divide al contenedor en cinco zonas: los cuatro puntos
cardinales y el centro; los componentes distribuidos con este
gestor se ubican en las posiciones: superior (north), inferior
(south), derecha (east), izquierda (west) y centro (center); estas
posiciones se representan por las constantes:
BorderLayout.CENTER, BorderLayout.NORTH,
BorderLayout.EAST, BorderLayout.SOUTH y
BorderLayout.WEST.
BorderLayout(int separaHorizontal, int separaVertical);
Practica
import javax.swing.*;
import java.awt.*;
public class MarcoBorder extends Jframe {
static int ANCHO =175;
static int ALTO = 100;
public MarcoBorder() {
super("Mi marco");
add(new JLabel("Norte", SwingConstants.CENTER), BorderLayout.NORTH);
add(new JLabel("Sur", SwingConstants.CENTER), BorderLayout.SOUTH);
add(new JLabel("Centro", SwingConstants.CENTER), BorderLayout.CENTER);
add(new JLabel("Oeste", SwingConstants.CENTER), BorderLayout.WEST);
add(new JLabel("Este", SwingConstants.CENTER), BorderLayout.EAST);
setSize(ANCHO,ALTO);
setVisible(true);
}
public static void main(String args[]) {
MarcoBorder miMarco = new MarcoBorder();
miMarco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
FlowLayout
Sitúa los componentes por filas de izquierda a derecha, cuando se completa
una fila comienza otra; es el gestor por omisión de los paneles y applets.
La clase FlowLayout dispone de varios constructores, uno de ellos establece
la alineación de los componentes: FlowLayout(int alineación); la alineación
puede tomar los valores: FlowLayout.RIGHT, FlowLayout.CENTER y
FlowLayout.LEFT.
Este otro constructor, FlowLayout(int alin, int sepHztal, int sepVert),
establece, además de la alineación, la separación en pixeles de los
componentes.
Practica
import javax.swing.*;
import java.awt.*;
public class MarcoBorder extends Jframe {
static int ANCHO =175;
static int ALTO = 100;
public MarcoBorder() {
super("Mi marco");
setLayout(new FlowLayout());
add(new JLabel("Primera"));
add(new JLabel("Segunda"));
add(new JLabel("Tercera"));
add(new JLabel("Cuarta"));
add(new JLabel("Quinta"));
add(new JLabel("Sexta"));
setSize(ANCHO,ALTO);
setVisible(true);
}
public static void main(String args[]) {
MarcoBorder miMarco = new MarcoBorder();
miMarco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Realizar 2 ejercicios, uno donde se implemente GridLayout y el
segundo donde se implemente BoxLayout:
GridLayout
GridLayout
Distribuye los componentes en una rejilla de celdas iguales en forma de
cuadrícula; los elementos se ubican de arriba abajo y de izquierda a
derecha.
Al crear el gestor se pasa el número de filas/columnas que forman la
rejilla en la que
se colocan los componentes; los constructores son:
GridLayout(), coloca los componentes en una única fila y única
columna.
GridLayout(int f,int c), coloca los componentes en cuadrículas de f
filas
por c columnas.
GridLayout(int f, int c, int sepHztal, int sepVert), define la rejilla y
establece la separación en pixeles.
BoxLayout
BoxLayout
sitúa los componentes en una única fila o una única columna, se
asemeja a una caja con orientación horizontal o vertical; el
constructor necesita un argumento con el contenedor que va a
utilizar y la orientación, la cual puede ser: BoxLayout.X_AXIS
o BoxLayout.Y_AXIS.
El formato del constructor es:
BoxLayout(Container destino, int orientacion)
Componentes de texto
Paquetes
Son una forma de organizar grupos de clases. Un paquete
contiene un conjunto de clases relacionadas bien por finalidad,
por ámbito o por herencia.
Ejemplos:
import java.util.Random;
import java.util.Date;
import java.util.Math;
Paquetes/ Librerías.
import casa.*;
Escribir un programa de conversión de temperatura, que convierta de
grados Fahrenheit a centígrados. La temperatura en grados Fahrenheit
deberá introducirse desde el teclado ( mediante un objeto JTextField).
Debe usarse un objeto Jlabel para mostrar la temperatura convertida:
𝟓 ∗(𝑭𝒂𝒉𝒓𝒆𝒏𝒉𝒆𝒊𝒕−𝟑𝟐)
𝑪𝒆𝒏𝒕𝒊𝒈𝒓𝒂𝒅𝒐𝒔 =
𝟗
𝟗 ∗(𝑲𝒆𝒍𝒗𝒊𝒏−𝟐𝟕𝟑.𝟏𝟓)
𝑭𝒂𝒉𝒓𝒆𝒏𝒉𝒆𝒊𝒕 = +32
𝟓
𝑲𝒆𝒍𝒗𝒊𝒏 = 𝑪𝒆𝒏𝒕𝒊𝒈𝒓𝒂𝒅𝒐𝒔+ 273.15
Paquetes
JAVA vs C#
Componentes
Un componente es el elemento básico de una interfaz gráfica.
Los componentes permiten al usuario interactuar con la
aplicación y proporcionar información desde el programa al
usuario sobre el estado de la aplicación.
Componentes Visuales.
Como su nombre lo indica son aquellos que se mantendrán
visibles ante la apreciación del usuario, en el momento de la
ejecución de dicha aplicación.
Componentes Visuales
Componentes Visuales
2.3 Creación de componentes (Visuales y no
visuales) definidos por el usuario.
Componentes No visuales.
Son aquellos componentes capaces de trabajar en segundo
plano, o fuera de la vista del usuario.
Uso de componentes (visuales y no Visuales)
Componentes Visuales.
Para realizar captura de datos.
Mostrar resultados de Consultas.
Mensajes de Alerta
Componentes No visuales.
Para ejecutar instrucciones controladas por periodos de tiempos
definidos por el usuario.
Realizar conexiones a diversos dispositivos, por medio de puertos.
Ejecutar procesos en segundo plano
Actividad
Resolver el siguiente ejercicio implementando el uso de
componentes Visuales y no visuales, según convenga.
Considerar los créditos de la siguiente forma:
T1 – 5000
T2 -10,000
T3 – 15,000
Otros – 20,000
2.4 Creación de paquetes / librerías definidas
por el usuario.
Fuentes de información