200 likes | 377 Views
AWT. ABSTRAC WINDOW TOOLKIT. AWT. ¿Qué es? Su estructura. Los Componentes Los Contenedores Los gestores de posición Los eventos. AWT ¿Qué es?. Es una librería de clases Java para desarrollar interfaces de usuario gráficas.
E N D
AWT ABSTRAC WINDOW TOOLKIT E.T.S de Ingenieros de Telecomunicación - UPNA
AWT • ¿Qué es? • Su estructura. • Los Componentes • Los Contenedores • Los gestores de posición • Los eventos E.T.S de Ingenieros de Telecomunicación - UPNA
AWT¿Qué es? • Es una librería de clases Java para desarrollar interfaces de usuario gráficas. • Es la librería básica y se ha construido una posterior que es la Swing. E.T.S de Ingenieros de Telecomunicación - UPNA
AWTSu estructura • La librería AWT esta compuesta por: • Los Componentes (java.awt.Component), como los Buttons, Labels,.. • Los Contenedores (java,awt.containers), contienen componentes. • Los gestores de posición (java.awt.LayoutManager), que posiciona los componentes dentro de los contenedores. • Los eventos (java.awt.AWTEvent), que nos indican las acciones del usuario. E.T.S de Ingenieros de Telecomunicación - UPNA
AWTLos componentes • Es una clase abstracta que representa todo lo que tiene una posición, un tamaño, puede ser pintado en pantalla y puede recibir eventos. • Los components de AWT son: Button Canvas Checkbox Choice Container Panel ScrollPane Window • Dialog • FileDialog • Frame • Label • List • Scrollbar • TextComponent • TextArea • TextField E.T.S de Ingenieros de Telecomunicación - UPNA
AWTLos contenedores • Es una clase abstracta derivada de Component, que representa a cualquier componente que pueda contener otros componentes. • A su vez son componentes • El AWT proporciona varias clases de Contenedores: • Panel • Applet • ScrollPane • Window • Dialog • FileDialog • Frame E.T.S de Ingenieros de Telecomunicación - UPNA
AWTGestores de posición ¿Como controlar dónde añadimos los objetos? • Para ello se crearon los Layout Maneger, ellos se especifican unas posiciones determinadas en un panel, frame o applet donde añadiremos nuestros componentes o un nuevo panel, al que también le podremos añadir un layout en cuyas posiciones podremos añadir componentes o más panels con layouts.... E.T.S de Ingenieros de Telecomunicación - UPNA
AWTGestores de posición FlowLayout • Es el que tienen los paneles por defecto. • Los objetos se van colocando en filas en el mismo orden en que se añadieron al contenedor. • Cuando se llena una fila se pasa a la siguiente. • Tiene tres posibles constructores: FlowLayout();. FlowLayout(FlowLayout.LEFT[RIGTH][CENTER]); Crea el layout sin añadirle los componentes, con los bordes de unos pegados a otros FlowLayout(FlowLayout.LEFT, gap_horizontal, gap_vertical); Indica la alineación de los componentes: a la izquierda, derecha o centro con espacio entre los componentes. E.T.S de Ingenieros de Telecomunicación - UPNA
AWTGestores de posición GridLayout • Crea un grid (malla) y va añadiendo los componentes a las cuadrículas de la malla de izquierda a derecha y de arriba abajo. • Todas las cuadrículas serán del mismo tamaño y crecerán o se harán más pequeñas hasta ocupar toda el área del contenedor. • Dos posibles constructores: GridLayout(int filas, int columnas); Creará un layout en forma de malla con un número de columnas y filas igual al especificado. GridLayout(int columnas, int filas, int gap_horizontal, int gat_vertical); Especifica espaciados verticales y horizontales entre las cuadrículas. El espaciado se mide en píxeles. E.T.S de Ingenieros de Telecomunicación - UPNA
AWTGestores de posición BorderLayout • Este layout tiene cinco zonas predeterminadas son: norte (NORTH) sur (SOUTH) este(EAST) oeste (WEST) centro (CENTER) Al cambiar el tamaño del contenedor se estirarán hacia los lados para llegar a ocupar toda el área disponible, pero sin variar su tamaño en la dirección vertical. Variarán su tamaño en la dirección vertical pero sin nunca variarlo en la dirección horizontal. Crecerá o disminuirá en todas las direcciones para rellenar todo el espacio vertical y horizontal que queda entre las zonas norte, sur, este y oeste E.T.S de Ingenieros de Telecomunicación - UPNA
AWTGestores de posición BorderLayout • Posee dos contructores: • BorderLayout(); • Que creará el layout sin más • BordreLayout(int gap_horizontal, int gap_vertical); • Creará el layout dejando los gaps horizontales y verticales entre sus distintas zonas. • añadir más paneles o componentes a este Layout hay una pequeña diferencia aquí especificamos en el método add la región donde queremos añadir. • panel.add(componente_a_añadir, BorderLayout.REGION_que_QUERAMOS); E.T.S de Ingenieros de Telecomunicación - UPNA
EVENTOSDEFINICION • Evento: Encapsulación de la información que puede ser envada a la aplicación de manera asíncrona • Avisan de las acciones de usuario • Manejo de eventos: Se realiza mediante el uso de interfaces definidas en java.awt.event. Listener Interface E.T.S de Ingenieros de Telecomunicación - UPNA
EVENTOSTipos • FISICOS: • ComponentEvent • ContainerEvent • FocusEvent • KeyEvent • MouseEvent • MouseMotionEvent • WindowEvent E.T.S de Ingenieros de Telecomunicación - UPNA
EVENTOSTipos • SEMÁNTICOS: • ActionEvent • AdjustmentEvent • ItemEvent • TextEvent E.T.S de Ingenieros de Telecomunicación - UPNA
EVENTOSADAPTERS • Adapters: Son clases que tienen definidos todos los métodos de un interfaz concreto. • La implementación de dichos métodos está vacía. • Llamando a un Adapter y sobreescribiendo los métodos necesarios conseguimos el mismo resultado que implementando directamente el interfaz. • Heredando de un adapter extends. • Implementando directamente la interfaz implements. E.T.S de Ingenieros de Telecomunicación - UPNA
EVENTOSMétodos de los interfaces LISTENER INTERFACEADAPTER CLASSMÉTODOS ActionListener actionPerformed AdjustmentListener adjustmentValueChanged ComponentListener ComponentAdapter4 METODOS ContainerListener ContainerAdapter2 METODOS FocusListener FocusAdapter2 METODOS ItemListener itemStateChanged E.T.S de Ingenieros de Telecomunicación - UPNA
EVENTOSMétodos de los interfaces LISTENER INTERFACEADAPTER CLASSMÉTODOS KeyListener KeyAdapter 3 METODOS MouseListenerMouseAdapter5 METODOS MouseMotionListener MouseMotionAdapter2 METODOS TextListener textValueChanged WindowListener WindowAdapter7 METODOS E.T.S de Ingenieros de Telecomunicación - UPNA
AWT • CALCULADORA DE EJEMPLO EN JAVA • Utilizamos la tecnología AWT para crear el interface de la aplicación, como los botones, labels, marco…. E.T.S de Ingenieros de Telecomunicación - UPNA
DIAGRAMA DE CLASES: CALCULADORA E.T.S de Ingenieros de Telecomunicación - UPNA
Bibliografía • Piensa en Java. Bruce Eckel. 2º Edición • www.javahispano.org • Curso J2SE • Tutorial Java básico con ejemplos (Abraham) • Tutorial de Java AWT. E.T.S de Ingenieros de Telecomunicación - UPNA