Heim  >  Artikel  >  Java  >  Ausführliche Erklärung zum Erstellen von Fenstern und Programmen in Java

Ausführliche Erklärung zum Erstellen von Fenstern und Programmen in Java

零下一度
零下一度Original
2017-07-18 15:18:482354Durchsuche
  1. Detaillierte Erläuterung des Java-Erstellungsfensters und des Programmabschnitts wie folgt:

            1. init ()-Methode: Der Programmteil wird zum ersten Mal erstellt und aufgerufen, wenn der Programmteil zum ersten Mal initialisiert wird.

stop()-Methode: wird jedes Mal aufgerufen, wenn das Programm die Ansicht des Webbrowsers verlässt. Kann teure Vorgänge beenden ; wird auch vor dem Aufruf von destroy() aufgerufen.

Destroy()-Methode: Wird aufgerufen, wenn das Programm nicht mehr benötigt wird und von der Seite deinstalliert wird.

Start()-Methode: Wird jedes Mal aufgerufen, wenn das Programm den Webbrowser aufruft, und ermöglicht dem Programm, seine regulären Operationen zu starten (spezielle Programme werden durch stop() geschlossen);

paint()-Methode: Teil der Basisklasse Component (dritte Ebene in der Vererbungsstruktur). Wird als Teil von update() aufgerufen, um ein spezielles Rendering auf der Leinwand des Programms durchzuführen.

2. Ereignismodell: (1) Fügen Sie zunächst die Methode addXXXXXListener() zur Klasse hinzu.

(2) Schreiben Sie die Methode zum Ausführen der Schnittstelle neu.

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. Erstellen Sie ein Fenster: (1) Erstellen Sie eine neue Frame-Klasse in der main()-Methode und initialisieren Sie die vom Applet abgeleitete Klasse darauf.

(2) Erben Sie die WindowAdapter-Klasse und überschreiben Sie die windowClosing()-Methode.

                 (3) Führen Sie die setVisible()-Methode von Frame aus.

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-Anforderungen:

(1) Alle Klassen müssen in einem Paket platziert werden. Es gibt kein Paket im Web.

(2) Alle Klassen müssen als öffentliche Klasse deklariert werden, damit von außen auf sie zugegriffen werden kann.

(3) Alle Attribute in der Klasse müssen gekapselt und mit private deklariert werden.

(4) Wenn die gekapselten Eigenschaften extern bedient werden müssen, müssen die entsprechenden Setter- und Getter-Methoden geschrieben werden.

(5) Es gibt mindestens einen parameterlosen Konstruktor in einem JavaBean.

5. Ein Beispiel für verschiedene Swing-Grenzen:

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);
        }
    }

}

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung zum Erstellen von Fenstern und Programmen in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn