Java Swing Cheatsheet
Java Swing Cheatsheet
Sheet
1. Main Window
a. JFrame
b. JPanel
2. Core Components
a. Components Management
b. JLabel
c. JButton
d. JTextField
e. JTextArea
f. TCheckBox
g. JRadioButton
3. Event Handling
a. ActionListener
b. ItemListener
c. KeyListener
d. MouseListener
4. Layouts
a. FlowLayout
5. Full Example
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
Main Window
JFrame
The main window.
}
}
Properties
Background frame.getContentPane().setBa
Color ckground(Color.RED);
JPanel
Container for grouping components, it as a subsection of a window (JFrame) that
can hold buttons, labels, text fields, and more.
Core Components
Component Management
JLabel
Displays text or an image (non-interactive).
Useful Methods:
JTextField
Single-line input text
JTextArea
Multi-line text box
JTextArea textArea = new JTextArea(5, 20);
JCheckBox
Toggle option (on/off).
JRadioButton
Select one option in a group.
JRadioButton rb = new JRadioButton("Male");
ButtonGroup group = new ButtonGroup();
group.add(rb);
Event Handling
In Swing, event handling lets components respond to user actions like clicks,
key presses, or window events. This is done by adding listeners to
components.
button.addActionListener(e -> {
System.out.println("Button clicked!");
});
KeyListener-keyboard Input
textField.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
System.out.println("Key pressed: " + e.getKeyChar());
}
});
MouseListener-Mouse Clicks
component.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
System.out.println("Mouse clicked!");
}
});
Layouts
FlowLayout
Places components left to right, like text in a paragraph.
frame.setLayout(new FlowLayout());
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
🪟
public static void main(String[] args) {
// Main Window
JFrame frame = new JFrame("Cheat Sheet App with Image");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(600, 600);
// 🏷️ JLabel
JLabel label = new JLabel("Enter your name:");
// 🖊️ JTextField
JTextField textField = new JTextField(20);
// 📝 JTextArea
JTextArea textArea = new JTextArea(5, 30);
textArea.setLineWrap(true);
textArea.setWrapStyleWord(true);
//✅ JCheckBox
JCheckBox checkBox = new JCheckBox("I agree to the
terms");
// 🖱️ JButton
JButton button = new JButton("Submit");
🖼️
panel.add(textArea);
panel.add(imageLabel); // Add image at the end