¿Qué es Swing en Java?
Balanceándose en Java Es un conjunto de herramientas de interfaz gráfica de usuario (GUI) que incluye los componentes de la GUI. Swing proporciona un amplio conjunto de widgets y paquetes para crear sofisticados componentes GUI para aplicaciones Java. Swing es parte de Java Foundation Classes (JFC), que es una API para programas Java que proporciona una GUI.
La biblioteca Java Swing está construida sobre el Java Abstract Widget Toolkit (AWT), un conjunto de herramientas de GUI más antiguo y dependiente de la plataforma. Puede utilizar componentes de programación de la GUI de Java como botones, cuadros de texto, etc. de la biblioteca y no necesita crear los componentes desde cero.
En este tutorial de Java Swing, aprenderá:
Diagrama de jerarquía clase Java Swing
JComponent son todos los componentes de Java Swing que se pueden agregar a las clases de contenedor.
¿Qué es una clase de contenedor?
Las clases de contenedor son clases que pueden tener otros componentes. Entonces, para crear una GUI de Java, necesitamos al menos un objeto contenedor. Hay 3 tipos de contenedores Java Swing.
- Panel: Es un contenedor puro y no una ventana en sí misma. El único propósito de un tablero es organizar los componentes en una ventana.
- Marco: Es una ventana completamente funcional con su título e íconos.
- Diálogo: Se puede considerar como una ventana emergente que aparece cuando es necesario mostrar un mensaje. No es una ventana completamente funcional como Frame.
¿Qué es una GUI en Java?
GUI (interfaz gráfica de usuario) en Java Es un generador de experiencia visual fácil de usar para aplicaciones Java. Se compone principalmente de componentes gráficos como botones, etiquetas, ventanas, etc. a través de los cuales el usuario puede interactuar con una aplicación. La GUI juega un papel importante en la construcción de interfaces sencillas para aplicaciones Java.
Ejemplo de GUI de Java
Ahora, en este tutorial de Java Swing, entendamos la GUI con ejemplos de Java Swing.
Ejemplo: Para aprender la programación de la GUI de Java en este tutorial de la GUI de Java
Paso 1) Copie el siguiente código en un editor
import javax.swing.*; class gui{ public static void main(String args[]){ JFrame frame = new JFrame("My First GUI"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300,300); JButton button = new JButton("Press"); frame.getContentPane().add(button); // Adds Button to content pane of frame frame.setVisible(true); } }
Paso 2) Guarde, compile y ejecute el código.
Paso 3) Ahora agreguemos un botón a nuestro marco. Copie el siguiente código en un editor de un ejemplo de GUI de Java determinado
import javax.swing.*; class gui{ public static void main(String args[]){ JFrame frame = new JFrame("My First GUI"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300,300); JButton button1 = new JButton("Press"); frame.getContentPane().add(button1); frame.setVisible(true); } }
Paso 4) Ejecute el código. Obtendrás un gran botón
Paso 5) ¿Qué hay de agregar dos botones? Copie el siguiente código en un editor.
import javax.swing.*; class gui{ public static void main(String args[]){ JFrame frame = new JFrame("My First GUI"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(300,300); JButton button1 = new JButton("Button 1"); JButton button2 = new JButton("Button 2"); frame.getContentPane().add(button1); frame.getContentPane().add(button2); frame.setVisible(true); } }
Paso 6) Guarde, compile y ejecute el programa.
Paso 7) Salida inesperada =? Los botones se superponen.
Administrador de diseño de Java
El administrador de diseño se utiliza para diseñar (o configurar) los componentes de la GUI de Java dentro de un contenedor. Hay muchos administradores de diseño, pero los que se usan con más frecuencia son:
Java BorderLayout
UNA. BorderLayout
ofrece componentes en hasta cinco áreas: superior, inferior, izquierda, derecha y media. JFrame es el administrador de diseño predeterminado para todos los Java
Java FlowLayout
FlowLayout
Es el administrador de diseño predeterminado para todos JPanel
. Presenta los componentes uno tras otro.
Java GridBagLayout
Es el diseño más sofisticado. Alinea los componentes colocándolos en una cuadrícula de celdas, lo que permite que los componentes abarquen más de una celda.
Paso 8) ¿Qué hay de crear un marco de chat como se muestra a continuación?
Intente codificarse usted mismo antes de mirar la tabla a continuación.
//Usually you will require both swing and awt packages // even if you are working with just swings. import javax.swing.*; import java.awt.*; class gui { public static void main(String args[]) { //Creating the Frame JFrame frame = new JFrame("Chat Frame"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(400, 400); //Creating the MenuBar and adding components JMenuBar mb = new JMenuBar(); JMenu m1 = new JMenu("FILE"); JMenu m2 = new JMenu("Help"); mb.add(m1); mb.add(m2); JMenuItem m11 = new JMenuItem("Open"); JMenuItem m22 = new JMenuItem("Save as"); m1.add(m11); m1.add(m22); //Creating the panel at bottom and adding components JPanel panel = new JPanel(); // the panel is not visible in output JLabel label = new JLabel("Enter Text"); JTextField tf = new JTextField(10); // accepts upto 10 characters JButton send = new JButton("Send"); JButton reset = new JButton("Reset"); panel.add(label); // Components Added using Flow Layout panel.add(tf); panel.add(send); panel.add(reset); // Text Area at the Center JTextArea ta = new JTextArea(); //Adding Components to the frame. frame.getContentPane().add(BorderLayout.SOUTH, panel); frame.getContentPane().add(BorderLayout.NORTH, mb); frame.getContentPane().add(BorderLayout.CENTER, ta); frame.setVisible(true); } }