Swing Program in Java

Java Swing is part of Java Foundation Classes (JFC). The swing toolkit is used to generate Graphical User Interface (GUI) for programs written in Java. The Java swing API is more sophisticated and light-weight as compared to AWT (Abstract Window Toolkit). The swing API is also platform-independent. The swing program in Java demonstrates the usage to swing API in the program.

Swing Example

Let’s learn how to create a simple login page using Java Swing. The following program illustrates the same.

FileName: SwingExample.java


Swing Program in Java

Explanation: The UI created above has a lot of parts. One of the parts is JFrame.

JFrame: JFrame is the first part that comes into existence in a swing application. It contains the title, panels, various buttons, text fields, etc. JFrame is the most fundamental part of a swing UI application.

The above statement creates a JFrame with the title “A basic login page”

The JFrame does not contain the buttons or fields directly. The frame needs a panel for it.

JPanel: The JPanel class is responsible for creating panels in a swing application. A frame can have more than one panel. A panel is responsible for the positioning or size of fields, buttons, etc. A panel in the swing is similar to a div tag in HTML. Both are used for the grouping of elements/ components.

The above statement creates a new panel for the Java swing application. After the creation of the panel, we can add components like labels, text fields, buttons, etc.

JLabel: The text written in output (User Name, User Password) is due to the class JLabel. The main usage of the JLabel class is to put labels/ texts in the GUI.

The above statement creates a label ‘User Name’. Similarly, other labels can also be created.

JTextField: Corresponding to the label ‘User Name’, it is required to allow the user to enter his/ her user name. To serve this purpose, the class JTextField is used. abc shown in the output is written by the user.

The above statement creates an empty text field with the given column numbers, i.e., 21.

JPasswordField: The class JPasswordField is similar to JTextField. The only difference is that the class JPasswordField hides the input given by the user and shows only dots, which is normal behavior when the password is entered on any login page. The output also shows the same.

The above-written statement creates a new password field of column size 21.

JButton: A login button is required to validate the of inputs given by the user. For the creation of a login button, the class JButton is used. The following statement creates a button and puts the label “User Login” on it.

Cross button (X): The cross button terminates the application when pressed (look at the top right corner of the output). It happens because of the following:

The statement has to be present to terminate the program. Because the default behavior of the cross button is to hide the application. Comment the above statement in the program, and observe the behavior.

Pin It on Pinterest

Share This