Want to create interactive content? It’s easy in Genially!
JAVA SWING
Murgia Mendoza Samuel
Created on November 29, 2023
DESCRIBCION
Start designing with a free template
Discover more than 1500 professional designs like these:
Transcript
Swing en Java.
Java Swing es una biblioteca gráfica para el desarrollo de interfaces de usuario (UI) en Java. Pertenece al paquete javax.swing y proporciona un conjunto de componentes y herramientas que permiten la creación de interfaces gráficas interactivas en aplicaciones Java.
Ventajas de usar Swing en lugar de AWT(Abstract Window Toolkit).
Contenedores y componentes.
Plataformas compatibles.
Arquitectura de Swing.
Origen de Swing
Nomenclaturas para los componentes Swing
Detalles sobre los componentes más comunes
Java Swing fue desarrollado por Sun Microsystems (adquirido por Oracle Corporation en 2010) como una extensión de la biblioteca AWT (Abstract Window Toolkit). Se introdujo por primera vez con el lanzamiento de Java 2 Platform, Standard Edition (J2SE) 1.2 en 1998. La principal motivación detrás de la creación de Swing fue abordar las limitaciones y deficiencias percibidas en AWT. AWT proporcionaba componentes de interfaz gráfica basados en los widgets nativos del sistema operativo, lo que resultaba en interfaces de usuario menos consistentes y flexibles. Además, AWT tenía ciertas limitaciones en cuanto a personalización y capacidad de diseño.
Windows: Java Swing es totalmente compatible con sistemas operativos basados en Windows, proporcionando una experiencia consistente en diferentes versiones de este sistema operativo. Linux: Las aplicaciones Swing son compatibles con sistemas operativos basados en Linux, y la portabilidad de Java permite que estas aplicaciones se ejecuten de manera consistente en diversas distribuciones de Linux. macOS: Swing es compatible con sistemas operativos macOS, lo que permite que las aplicaciones Java Swing se ejecuten en entornos de Mac de manera efectiva. Entornos Unix: Además de Linux, Swing puede utilizarse en otros sistemas operativos Unix, extendiendo su portabilidad a una variedad de entornos.
Contenedores: Los contenedores son componentes que pueden contener otros componentes. Se utilizan para organizar y estructurar la disposición de los componentes visuales en la interfaz de usuario. Algunos contenedores comunes en Swing incluyen JFrame (ventana principal), JPanel (panel), JScrollPane (panel con barra de desplazamiento), entre otros. Los contenedores utilizan gestores de diseño (layout managers) para controlar cómo se colocan y redimensionan los componentes dentro de ellos. Componentes: Los componentes son elementos visuales que se colocan dentro de contenedores. Representan los elementos gráficos de la interfaz de usuario, como botones, etiquetas, campos de texto, listas, etc. Pueden responder a eventos del usuario, como clics de ratón o pulsaciones de teclas. La mayoría de los componentes en Swing comienzan con la letra 'J', como JButton, JLabel, JTextField, etc. Los componentes pueden anidarse dentro de otros componentes y contenedores para crear interfaces más complejas.
Componentes Livianos: Swing utiliza componentes livianos, lo que proporciona mayor portabilidad y coherencia en diferentes plataformas. Consistencia en Plataformas: Swing garantiza una apariencia y comportamiento más consistentes en diversas plataformas. Personalización Mejorada: Permite una mayor personalización visual y de comportamiento, incluyendo la capacidad de aplicar "look and feel" personalizados. Manejo de Eventos Mejorado: Ofrece un modelo más robusto y flexible para manejar eventos de interfaz de usuario. Gestión de Diseño Avanzada: Incluye gestores de diseño más avanzados para facilitar el diseño y la disposición de componentes. Amplio Conjunto de Componentes: Proporciona una amplia variedad de componentes, permitiendo interfaces gráficas más ricas. Soporte Mejorado para Arrastrar y Soltar: Ofrece un mejor soporte para operaciones de arrastrar y soltar.
La arquitectura de Swing en Java sigue el patrón Modelo-Vista-Controlador (MVC): Modelo: Representa los datos y la lógica de la aplicación. Vista: Define la presentación visual de los datos y responde a las interacciones del usuario. Controlador: Maneja las interacciones del usuario, actualizando el modelo y la vista. Gestión de Eventos: Captura acciones del usuario a través de controladores asociados a componentes. Look and Feel: Permite personalizar la apariencia de la interfaz de usuario. Contenedores y Diseño: Organizan y disponen componentes en la interfaz. Renderización Personalizada: Permite personalizar la apariencia de los componentes.
JLabel:JLabel label = new JLabel("Hola, mundo"); JTextField: JTextField textField = new JTextField("Texto inicial"); JTextArea: JTextArea textArea = new JTextArea("Texto inicial", 5, 20); JButton: JButton button = new JButton("Haz clic"); JCheckBox: JCheckBox checkBox = new JCheckBox("Aceptar términos y condiciones"); JRadioButton: JRadioButton radioButton = new JRadioButton("Opción 1"); JComboBox: String[] opciones = {"Opción 1", "Opción 2", "Opción 3"}; JComboBox<String> comboBox = new JComboBox<>(opciones); JList: String[] elementos = {"Elemento 1", "Elemento 2", "Elemento 3"}; JList<String> lista = new JList<>(elementos);
JLabel: Propósito: Muestra texto o una imagen sin interacción directa del usuario. Uso típico: Etiquetar otras partes de la interfaz o mostrar información descriptiva. JTextField: Propósito: Permite al usuario ingresar texto de una línea. Uso típico: Para entradas de texto cortas, como nombres de usuario o contraseñas. JTextArea: Propósito: Permite al usuario ingresar texto de múltiples líneas. Uso típico: Para entradas de texto más extensas, como comentarios o descripciones. JButton: Propósito: Representa un botón que el usuario puede clicar. Uso típico: Iniciar acciones o procesos específicos cuando se hace clic.
JCheckBox: Propósito: Representa una casilla de verificación que puede estar marcada o desmarcada. Uso típico: Permitir que el usuario seleccione opciones múltiples. JRadioButton: Propósito: Representa un botón de opción que puede estar seleccionado o no. Uso típico: Permitir que el usuario elija una opción única de un conjunto. JComboBox: Propósito: Proporciona una lista desplegable de elementos para que el usuario elija. Uso típico: Selección de una opción única de una lista. JList: Propósito: Muestra una lista de elementos, ya sea en una sola selección o en múltiples selecciones. Uso típico: Mostrar y seleccionar elementos de una lista.