Prefacio
Swing es un conjunto de herramientas de desarrollo para desarrollar la interfaz de usuario de Java Aplications. Se basa en el kit de herramientas de ventana abstracto (AWT) para habilitar las aplicaciones multiplataforma para usar cualquier estilo de apariencia enchufable. Los desarrolladores de Swing pueden usar las características ricas y flexibles de Swing y los componentes modulares para crear una elegante interfaz de usuario con muy poco código.
Swing es un kit de herramientas GUI diseñado para Java.
Swing es parte de la clase básica Java.
Swing incluye dispositivos gráficos de interfaz de usuario (GUI), como cuadros de texto, botones, paneles de separación y tablas.
Swing proporciona muchos mejores elementos de pantalla de pantalla que AWT. Están escritos en Java puro, por lo que pueden atravesar plataformas como Java, lo cual no es como AWT. Son parte de JFC. Admiten paneles y temas reemplazables (temas específicos para varios valores predeterminados de sistemas operativos), pero en lugar de usar realmente dispositivos proporcionados por plataformas nativas, simplemente los imitan en la superficie. Esto significa que puede usar cualquier panel compatible con Java en cualquier plataforma. La desventaja de los componentes livianos es que son lentos para ejecutar, y la ventaja es que pueden adoptar un comportamiento unificado en todas las plataformas.
Hello World Programas
Helloworldswing.java El código de archivo es el siguiente:
import javax.swing.*; clase pública Helloworldswing { /** {*Crear y mostrar la GUI. Por razones de seguridad de hilo, * se llama en el hilo de llamadas de evento. */ private static void createAndshowGui () {// Asegúrese de un hermoso estilo de apariencia jframe.setDefaultloVandFeelDecorated (verdadero); // Crear y establecer ventana JFrame Frame = new JFrame ("HelloWorldSwing"); Frame.setDefaultCloseOperation (jframe.exit_on_close); // Agregar etiqueta "Hello World" Jlabel Label = new JLabel ("Hello World"); Frame.getContentPane (). add (etiqueta); // show window frame.pack (); Frame.SetVisible (verdadero); } public static void main (String [] args) {// Muestra la aplicación GUI javax.swing.swingutitilidad.invokelater (new runnable () {public void run () {createAndshowgui ();}}); }} Ejecute el siguiente comando para emitir el resultado:
$ javac helloworldswing.java $ java helloworldswing
Una instancia de un cuadro de inicio de sesión de usuario
El código de archivo swingloginexample.java es el siguiente:
import javax.swing.jbutton; import javax.swing.jframe; import javax.swing.jlabel; import javax.swing.jpanel; import javax.swing.jpasswordfield; import javax.swing.jtextfield; public class swingLoginexample {public static void main (string [] args) {// Crear instancia jframe jframe frame = new Jframe ("Ejemplo de inicio de sesión"); // establecer el ancho y la altura del marco de marco. Setsize (350, 200); Frame.setDefaultCloseOperation (jframe.exit_on_close); /* Crear un panel, esta etiqueta DIV tipo HTML* Podemos crear múltiples paneles y especificar ubicaciones en jframe* En el panel podemos agregar campos de texto, botones y otros componentes. */ Jpanel panel = new JPanel (); // Agregar panel Frame.add (panel); / * * Llame a métodos definidos por el usuario y agregue componentes al panel */ placecomponents (panel); // Establecer la interfaz en visible Frame.SetVisible (true); } private static void placecomponents (panel jpanel) { /* No introduciremos la parte de diseño aquí* Establezca el diseño en null* / panel.setLayout (nulo); // crear jlabel jlabel userlabel = new JLabel ("User:"); /* Este método define la ubicación del componente. * SetBounds (x, y, ancho, altura) * x e y especifican la nueva posición en la esquina superior izquierda, y el ancho y la altura especifican el nuevo tamaño. */ UserLabel.setBounds (10,20,80,25); panel.add (userLabel); /** Crear campo de texto para la entrada del usuario*/ jTextfield useText = new JTextField (20); UseRtext.setBounds (100,20,165,25); panel.Add (useText); // Ingrese el campo de texto para la contraseña JLabel PasswordLabel = new JLabel ("Password:"); PasswordLabel.setBounds (10,50,80,25); panel.Add (PasswordLabel); /** Este campo de texto similar a la entrada* Sin embargo, la información de entrada será reemplazada por puntos, que se utiliza para contener la seguridad de la contraseña*/ JPasswordfield PasswordText = New JPasswordfield (20); PasswordText.setBounds (100,50,165,25); panel.add (contraseña); // Crear botón de inicio de sesión JButton LoginButton = new JButton ("Login"); LoginButton.setBounds (10, 80, 80, 25); panel.add (LoginButton); }}Ejecute el siguiente comando para emitir el resultado:
$ javac swingloginexample.java $ java swingloginexample
Análisis de concepto:
La idea básica del programa GUI de Jframe Java se basa en Jframe, que es un objeto de ventana en la pantalla, que se puede maximizar, minimizar y cerrar.
La clase de contenedor de panel en el JPANEL Java Graphic Interface (GUI) Toolkit Swing se incluye en el paquete Javax.Swing y puede anidarse. Su función es combinar componentes con las mismas funciones lógicas en el formulario. Es un contenedor liviano que se puede agregar al formulario Jframe. .
Jlabel Un objeto JLabel puede mostrar texto, imágenes o ambas. Puede especificar dónde se alinean el contenido de la etiqueta en el área de visualización de la etiqueta estableciendo la alineación vertical y horizontal. Por defecto, las etiquetas se centran verticalmente dentro de su área de visualización. Por defecto, las etiquetas que muestran solo el texto se alinean en los bordes iniciales; Las etiquetas que muestran solo las imágenes están alineadas en el centro horizontalmente.
JTextfield es un componente liviano que permite la edición de texto de una sola línea.
JPasswordfield nos permite ingresar una línea de palabras como un cuadro de entrada, pero oculte el asterisco (*) o el punto crea una contraseña (contraseña)
JButton una instancia de la clase JButton. Se utiliza para crear botones similares a "Iniciar sesión" en instancias.
De acuerdo, este artículo ha llegado a su fin. Todo lo que hablamos aquí es un conocimiento básico. ¡Con esta base, no es difícil diseñar una interfaz gráfica de usuario más compleja!