import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
// Complete Tutorial - https://www.javatpoint.com/java-swing
// JFrame, JButton, JLabel, JTextField, JPasswordField, JTextArea(multi line region), JCheckBox,
// JRadioButton, ButtonGroup, JTable, JList, JScrollBar, JMenuBar, JMenu, JMenuItem, JPopUpMenu,
// JDialog
public class SwingTutorial {
public static void main(String[] args){
JFrame f = new JFrame();
JButton b = new JButton("Click");
b.setBounds(130, 100, 100, 40);
f.add(b);
f.setSize(400, 400);
f.setLayout(null);
f.setTitle("First Swing GUI");
f.setVisible(true);
JTextArea ta = new JTextArea(5, 4);
ta.setColumns(2);
ta.setRows(7);
ta.insert("Yash", 45);
ta.append("Hello");
JCheckBox cb = new JCheckBox("h", true);
cb.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
// something here
}
});
boolean checked = cb.isSelected();
JRadioButton rb = new JRadioButton("radio", false);
rb.setText("Hello");
String t = rb.getText();
rb.setEnabled(false);
rb.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
}
});
// Multiple Radio Button
JRadioButton r1 = new JRadioButton();
JRadioButton r2 = new JRadioButton();
ButtonGroup bg = new ButtonGroup();
bg.add(r1); bg.add(r2);
f.add(r1); f.add(r2);
// Tables
String[][] data = {{"1", "Yash", "123"}, {"2", "vardhan", "456"}};
String[] head = {"ID", "Name", "rank"};
JTable jt = new JTable(data, head);
jt.setCellSelectionEnabled(true);
// Lists
DefaultListModel<String> l = new DefaultListModel<>();
l.addElement("Item1");
l.addElement("Item2");
l.addElement("Item3");
JList<String> jl = new JList<>(l);
// Scroll Bar
JScrollBar sb = new JScrollBar(Adjustable.VERTICAL, 20, 5, 0, 100);
f.add(sb);
/* JButton
* It takes either a string or a icon object
* void setText(String)
* String getText()
* void setEnabled(boolean)
* void setIcon(Icon)
* Icon getIcon()
* void addEventListener(ActionListener)
* */
}
}
class SimpleButton{
public static void main(String[] args){
JFrame f = new JFrame("Buttons");
JTextField tf = new JTextField();
tf.setBounds(50, 50, 200, 20);
JLabel l = new JLabel();
l.setBounds(50, 150, 150, 25);
JButton b = new JButton("Click");
b.setBounds(75, 100, 100, 30);
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// tf.setText("Hello World");
l.setText(tf.getText());
tf.setText("");
}
});
f.add(b);
f.add(tf);
f.add(l);
f.setSize(400, 400);
f.setLayout(null);
f.setVisible(true);
}
}
class Addition{
public static void main(String[] args){
JFrame f = new JFrame("Addition");
JTextField tf1 = new JTextField();
JLabel l = new JLabel("+");
JLabel re = new JLabel("");
JTextField tf2 = new JTextField();
JButton b = new JButton("Equals");
tf1.setBounds(130, 100, 40, 20);
tf2.setBounds(210, 100, 40, 20);
l.setBounds(185, 100, 25, 20);
re.setBounds(150, 200, 120, 25);
b.setBounds(150, 150, 80, 25);
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
re.setText("Answer: " + (Integer.parseInt(tf1.getText()) + Integer.parseInt(tf2.getText())));
tf1.setText(null);
tf2.setText(null);
}
});
f.add(tf1); f.add(tf2); f.add(b); f.add(l); f.add(re);
f.setSize(400, 400);
f.setLayout(null);
f.setVisible(true);
}
}
class Login{
public static void main(String[] args){
JFrame f = new JFrame("Login Page");
JTextField username = new JTextField();
JPasswordField password = new JPasswordField();
JButton b = new JButton("Login");
username.setBounds(100, 100, 200, 25);
password.setBounds(100, 150, 200, 25);
b.setBounds(150, 200, 100, 20);
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if(username.getText().equals("yasho") && new String(password.getPassword()).equals("7519")){
f.setTitle("Logged In");
}
else{
f.setTitle("Wrong username and password");
}
username.setText(null);
password.setText(null);
}
});
f.add(username);
f.add(password);
f.add(b);
f.setSize(400, 400);
f.setLayout(null);
f.setVisible(true);
}
}
class Menus{
public static void main(String[] args){
JFrame f = new JFrame("Menus");
JMenu menu, sub;
JMenuItem i1, i2, i3, i4, i5;
JMenuBar mb = new JMenuBar();
menu = new JMenu("Menu");
sub = new JMenu("Sub Menu");
i1 = new JMenuItem("Item 1");
i2 = new JMenuItem("Item 2");
i3 = new JMenuItem("Item 3");
i4 = new JMenuItem("Item 4");
i5 = new JMenuItem("Item 5");
menu.add(i1); menu.add(i2); menu.add(i3);
sub.add(i4); sub.add(i5);
menu.add(sub);
mb.add(menu);
i2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
f.setTitle("Worked");
}
});
f.setJMenuBar(mb);
f.setSize(400, 400);
f.setLayout(null);
f.setVisible(true);
}
}
class PopupMenu{
public static void main(String[] args){
final JFrame f = new JFrame("PopUp Menus");
final JPopupMenu pop = new JPopupMenu("Edit");
final JMenuItem cut = new JMenuItem("Cut");
final JMenuItem copy = new JMenuItem("Copy");
f.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
pop.show(f, e.getX(), e.getY());
}
});
pop.add(cut); pop.add(copy);
f.add(pop);
f.setSize(400, 400);
f.setLayout(null);
f.setVisible(true);
}
}
class ProgressBar{
static int v = 20;
public static void main(String[] args){
final JFrame f = new JFrame("Progress Bar");
final JButton b = new JButton("Click");
b.setBounds(100, 150, 80, 25);
final JProgressBar pb = new JProgressBar(Adjustable.HORIZONTAL, 0, 100);
pb.setString(v + "%");
pb.setValue(v);
pb.setBounds(100, 100, 100, 30);
pb.setStringPainted(true); // determines whether string should be displayed
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
v += 1;
pb.setString(v + "%");
pb.setValue(v);
}
});
f.add(pb);
f.add(b);
f.setSize(400, 400);
f.setLayout(null);
f.setVisible(true);
}
}
class Dialogs{
static JDialog d;
public static void main(String[] args){
JFrame f = new JFrame("Dialog");
d = new JDialog(f, "Dialog Example", true);
d.setLayout(new FlowLayout());
JButton b = new JButton("OK");
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
d.setVisible(false);
}
});
d.add(new JLabel("Click the Button"));
d.add(b);
d.setSize(300, 300);
d.setVisible(true);
}
}
Comments
Post a Comment