Home  >  Article  >  Java  >  Detailed explanation of creating windows and programs in Java

Detailed explanation of creating windows and programs in Java

零下一度
零下一度Original
2017-07-18 15:18:482395browse
  1. Detailed explanation of Java's creation window and program slice, as shown below:

            1. init () method: The program piece is created for the first time and is called when the program piece is initialized for the first time.

## Stop() method: Called every time the program leaves the view of the web browser. Can shut down expensive operations; also called before calling destroy().

Destroy() method: Called when the program is no longer needed and is uninstalled from the page.

Start() method: Called whenever the program enters the web browser and allows the program to start its regular operations (the special program is closed by stop()); also after init() transfer.

paint() method: part of the base class Component (third level in the inheritance structure). Called as part of update() to perform special rendering on the program's canvas.

2. Event model: (1) First add the addXXXXXListener() method to the class.

                   (2) Rewrite the method of executing the interface.

package thirteen;import java.awt.*;import java.awt.event.*;import java.applet.*;public class Button2New extends Applet {
    Button b1 = new Button("button1"), b2 = new Button("button2");public void init() {
        b1.addActionListener(new B1());
        b2.addActionListener(new B2());
        add(b1);
        add(b2);
    }class B1 implements ActionListener {public void actionPerformed(ActionEvent e) {
            getAppletContext().showStatus("BUTTon1");
        }
    }class B2 implements ActionListener {public void actionPerformed(ActionEvent e) {
            getAppletContext().showStatus("Button2");
        }
    }
}
3. Making a window: (1) Create a new Frame class in the main() method and initialize the applet derived class to it.

                 (2) Inherit the WindowAdapter class and override the windowClosing() method.

                (3) Execute the setVisible() method of Frame.

package thirteen;import java.applet.*;import java.applet.*;import java.awt.BorderLayout;import java.awt.Button;import java.awt.TextField;import java.awt.Desktop.Action;import java.awt.Frame;import java.awt.event.*;import java.time.temporal.TemporalQueries;import javax.swing.table.TableRowSorter;import org.omg.CORBA.FloatSeqHelper;public class TextNew extends Applet {
    Button b1 = new Button("Get Text"), b2 = new Button("Set Text");
    TextField t1 = new TextField(30), t2 = new TextField(30), t3 = new TextField(30);
    String s = new String();public void init() {
        b1.addActionListener(new B1());
        b2.addActionListener(new B2());
        t1.addTextListener(new T1());
        t1.addActionListener(new T1A());
        t1.addKeyListener(new T1K());
        add(b1);
        add(b2);
        add(t1);
        add(t2);
        add(t3);
    }class T1 implements TextListener {public void textValueChanged(TextEvent e) {
            t2.setText(t1.getText());
        }
    }class T1A implements ActionListener {private int count = 0;

        @Overridepublic void actionPerformed(ActionEvent e) {// TODO 自动生成的方法存根t3.setText("t1 Action Event " + count++);

        }

    }class T1K extends KeyAdapter {public void keyTyped(KeyEvent e) {
            String tString = t1.getText();if (e.getKeyChar() == KeyEvent.VK_BACK_SPACE) {if (tString.length() > 0) {
                    tString = tString.substring(0, tString.length() - 1);
                    t1.setText(tString);
                }
            }elset1.setText(t1.getText()+Character.toUpperCase(e.getKeyChar()));
            t1.setCaretPosition(t1.getText().length());
            e.consume();
        }
    }    class B1 implements ActionListener{public void actionPerformed(ActionEvent e){
            s=t1.getSelectedText();if(s.length()==0)s=t1.getText();
            t1.setEditable(true);
        }
    }class B2 implements ActionListener{public void actionPerformed(ActionEvent e){
            t1.setText("Insert by Button2:"+s);
            t1.setEditable(false);;
        }
    }    public static void main(String[] args){
        TextNew applet=new TextNew();
        Frame aFrame=new Frame("TextNew");
        aFrame.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e){
                System.exit(0);
            }
        });
        aFrame.add(applet, BorderLayout.CENTER);
        aFrame.setSize(300,200);
        applet.init();
        applet.start();
        aFrame.setVisible(true);
    }

}
4. JavaBean requirements:

(1) All classes must be placed in a package. There is no package in the web.

(2) All classes must be declared as public class so that they can be accessed externally.

(3) All attributes in the class must be encapsulated and declared using private.

(4) If the encapsulated properties need to be operated externally, the corresponding setter and getter methods must be written.

(5) There is at least one parameterless constructor in a JavaBean.

5. An example of various Swing borders:

package thirteen;import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.*;public class Borders extends JPanel {static JPanel showBorder(Border b) {
        JPanel jPanel = new JPanel();
        jPanel.setLayout(new BorderLayout());
        String nm = b.getClass().toString();
        nm = nm.substring(nm.lastIndexOf('.') + 1);
        jPanel.add(new JLabel(nm, JLabel.CENTER), BorderLayout.CENTER);
        jPanel.setBorder(b);return jPanel;
    }public Borders() {
        setLayout(new GridLayout(2, 4));
        add(showBorder(new TitledBorder("Title")));
        add(showBorder(new EtchedBorder()));
        add(showBorder(new LineBorder(Color.blue)));
        add(showBorder(new MatteBorder(5, 5, 30, 30, Color.green)));
        add(showBorder(new BevelBorder(BevelBorder.RAISED)));
        add(showBorder(new SoftBevelBorder(BevelBorder.LOWERED)));
        add(showBorder(new CompoundBorder(new EtchedBorder(), new LineBorder(Color.red))));
    }public static void main(String[] args) {
        Show.inFrame(new Borders(), 500, 300);
    }     static class Show {public static void inFrame(JPanel jPanel, int width, int height) {
            String title = jPanel.getClass().toString();if (title.indexOf("class") != -1)
                title = title.substring(6);
            JFrame frame = new JFrame(title);
            frame.addWindowListener(new WindowAdapter() {public void WindowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
            frame.getContentPane().add(jPanel, BorderLayout.CENTER);
            frame.setSize(width, height);
            frame.setVisible(true);
        }
    }

}

The above is the detailed content of Detailed explanation of creating windows and programs in Java. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn