Mostrando entradas con la etiqueta gui. Mostrar todas las entradas
Mostrando entradas con la etiqueta gui. Mostrar todas las entradas

domingo, 11 de diciembre de 2016

Cual es la diferencia entre Swing y AWT para crear GUIs en Java


(No olvides suscribirte)

AWT vs Swing

    Ambas forman parte del grupo de librerías que en Java nos permiten construir nuestra propia interfaz gráfica, pero ¿Acaso una de ellas es mejor que la otra? empecemos diciendo que AWT es realmente el método "viejo", ya que fue la primera librería proporcionada por Java para crear nuestra propia GUI, Swing por otro lado sería el método "nuevo" ya que llegó con la intención de subsanar los inconvenientes que representaba AWT, estos inconvenientes solo se evidenciaban bajo el concepto de multiplataforma de Java, observa la tabla a continuación :


AWT Swing
Usa componentes del S.O. Dibuja sus propios componentes
El S.O. maneja los eventos Java maneja los eventos
La apariencia cambia con el S.O Tienen la misma apariencia en cualquier S.O.
La apariencia es estática Se puede personalizar con los Look & Feel

  Luego de ver esta tabla y el video que encabeza esta entrada, nos queda claro el principal inconveniente al usar AWT, en cada sistema operativo nuestra interfaz va a tener una apariencia diferente y es posible que incluso parte del comportamiento sea diferente también, ya que los eventos son manejados por el sistema operativo, esto hacía que desarrollar aplicaciones con interfaz gráfica en Java fuera algo tedioso, había que verificar que servía y que no en cada sistema, por lo que el eslogan de java: "Escribe una vez y ejecútalo donde quieras" se veía un poco afectado.

sábado, 3 de diciembre de 2016

Como hacer Ventanas en Java, introducción a las GUI Clase 9


Para ver en Youtube clic aquí
Para ver la lista de reproducción completa clic aquí
(No olvides suscribirte)


Ventana básica en Java

   En este tutorial principalmente se enseña a hacer una ventana básica, esto a modo de introducción a la creación de interfaces gráficas. Existen 3 modos de crear ventanas en Java, en el video se tratarán  los 3, la primera con swing, luego con awt y por último usando el diseñador de Netbeans, en este caso estamos usando igualmente swing pero con la ayuda del diseñador es mucho más simple.

Elementos Swing

  Aquí solo compartiré una referencia para que observen los diferentes elementos Swing que se pueden colocar en una ventana, la página está en inglés pero es una guía visual así que no es necesario leer mucho, en el tutorial dedicado al tema de los componentes profundizaremos mas al respecto

¿Que son las Layouts?

  Las layouts son simplemente una forma de decirle a Java como organizar los elementos que vamos colocando en cada ventana, cada layout de dice el tamaño y la ubicación que debe tener cada elemento, a continuación las layouts mas comunes:
  • BoderLayout: Permite organizar los elementos usando puntos cardinales, norte, sur, este y oeste
  • BoxLayout: Crea columnas o filas de elementos
  • FlowLayout: Organiza los elementos en lineas, con tamaño justo para su contenido
  • GridLayout: Podemos crear una matriz para colocar los elementos en ella, el tamaño será lo que ocupe cada celda
  • GridBagLayout: Es uno de los mas sofisticados, al igual que el de arriba nos permite crear una matriz, pero aquí podemos especificar que un elemento ocupe dos celdas, o que su tamaño no cubra la celda entera
  Aquí se intentó explicar las layouts de forma muy resumida, en futuras clases se hablará mas profundamente acerca de este tema, faltaron algunos layouts por mencionar, puedes ver una referencia completa en este enlace (está en inglés):

WindowAdapter

  Es la clase que permite sobrescribir los métodos que se llaman en un evento de ventana, a continuación una descripción de cada uno:
  • windowActivated: Cuando la ventana se activa
  • windowColsed: Cuando la ventana es cerrada
  • windowClosing: Cuando la ventana se esta cerrando
  • windowDesactivated: Cuando la ventana se desactiva
  • windowsDeiconified: Cuando la ventana se des-iconifica
  • windowGainedFocus: Cuando gana el foco
  • windowIconified: Cuando la se iconifica
  • windowLostFocus: Cuando la ventana pierde el foco
  • windowOpened: Cuando se abre la ventana
  • windowStateChanged: Cuando cambia el estado de la ventana
Mas info aquí

Descarga los ejemplos del Blog