Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

import java.awt.Component;
import java.awt.FlowLayout;
import java.awt.Window;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.JButton;
import javax.swing.JFrame;

public class Main {
    public static void main(String[] argv) throws Exception {
        JFrame frame = new JFrame();
        JButton component1 = new JButton("1");
        JButton component2 = new JButton("2");
        JButton component3 = new JButton("3");

        frame.setLayout(new FlowLayout());
        frame.add(component1);
        frame.add(component2);
        frame.add(component3);

        InitialFocusSetter.setInitialFocus(frame, component2);

        frame.pack();
        frame.setVisible(true);
    }
}

class InitialFocusSetter {
    public static void setInitialFocus(Window w, Component c) {
        w.addWindowListener(new FocusSetter(c));
    }
}

class FocusSetter extends WindowAdapter {
    Component initComp;

    FocusSetter(Component c) {
        initComp = c;
    }

    public void windowOpened(WindowEvent e) {
        initComp.requestFocus();
        e.getWindow().removeWindowListener(this);
    }
}