简体   繁体   中英

What is Form load event handler in Java?

什么是 Java(使用网络 bean)中类似于 C# 中的 From_Load 的事件处理程序?

If you're using Swing's JFrame, try using addWindowListener (inherited from java.awt.Window)

The listener's windowOpened method looks like where you want to be...

This simple sample is useful.

public static void main(String[] args) {

    JFrame fa = new JFrame();
    fa.setBounds(100, 100, 400, 200);
    fa.setVisible(true);
    fa.addWindowListener(new WindowListener() {

        @Override
        public void windowOpened(WindowEvent e) {
            JOptionPane.showMessageDialog(fa, "windowOpened");
        }

        @Override
        public void windowClosing(WindowEvent e) {
            JOptionPane.showMessageDialog(fa, "windowClosing");
        }

        @Override
        public void windowClosed(WindowEvent e) {
            JOptionPane.showMessageDialog(fa, "windowClosed");
        }

        @Override
        public void windowIconified(WindowEvent e) {
            JOptionPane.showMessageDialog(fa, "windowIconified");
        }

        @Override
        public void windowDeiconified(WindowEvent e) {
            JOptionPane.showMessageDialog(fa, "windowDeiconified");
        }

        @Override
        public void windowActivated(WindowEvent e) {
        //                JOptionPane.showMessageDialog(fa, "windowActivated");
        }

        @Override
        public void windowDeactivated(WindowEvent e) {
        //                JOptionPane.showMessageDialog(fa, "windowDeactivated");
        }
    });
}

Whilst the accepted answer is based on the underlying WindowListener interface (which forces you to provide an implementation for each type of event you can use) the WindowAdapter where you can override the appropriate event you are interested in.

public class MySwingJFrame extends JFrame {
    public MySwingJFrame() {
        addWindowListener(new WindowAdapter() {
            @Override
            public void windowOpened(WindowEvent e) {
                // do something
            }
        });
    }
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM