Java GUI de inicio rápido

Hay dos escritos en juegos de herramientas GUI de Java, respectivamente, AWT, Swing.
Swing es expansión AWT, Swing tiene amplia de componentes y métodos AWT.
AWT y Swing se pueden utilizar en todas las plataformas; AWT variará de plataformas de sistemas, el estilo de la interfaz de usuario cambiará, Swing no es coherente después de la finalización de estilos de diseño en todas las plataformas.

import java.awt.*;
import javax.swing.*;

Un ejemplo awt

El siguiente es un ejemplo de una ventana

import java.awt.*;
public class MyFrame extends Frame {
    public  MyFrame(){
        super("测试");
        setSize(400,200);
        setVisible(true);
    }
    public  static  void Main(String args[]){
        new MyFrame();
    }
}

archivo
Crear una ventana para heredar Frame, también heredará algunos métodos de marco;
marco en:

  • método súper título de la ventana puede ser proporcionado;
  • setsize tamaño de la ventana conjunto,(width,hight)
  • Conjuntos setVisible si la ventana de visualización, verdadero espectáculo, falsos para ocultar

setLayout(new FlowLayout());Una ventana de ajuste de disposición;
add(组件);para añadir componentes a una ventana, como botones y similares.

Vamos a añadir componentes a la ventana

import java.awt.*;
public class MyFrame extends Frame {
    public  MyFrame(){
        super("测试");

        setLayout(new FlowLayout());

        Button btn=new Button("Button");
        Font f=new Font("宋体",Font.BOLD,28);
        btn.setFont(f);
        add(btn);

        setSize(400,200);
        setVisible(true);
    }

ventana de inicio en el método main

    public  static  void main(String args[]){
        new MyFrame();
    }

efecto
archivo

evento

java, el evento se divide en tres áreas descritas,
Origen del suceso: Evento objeto
delegado del modelo de eventos: el manejo de eventos
detectores de eventos: Se encarga de la gestión de eventos

Un primer monitor B, el contenido del ajuste de escuchar, y establecer el contenido de la respuesta.
Una vez que un cambio en sí un estado para gatillo C;
C realiza D

Madre e hijo dijo, terminado su tarea, permiten mamá y papá dan a cortar una manzana para comer.
Madre: Event Monitoring por
su hijo: Evento Fuente
Acción: terminar el trabajo
evento: el padre de cortar una manzana a su hijo

Madre monitoreo hijo, ya sea de control para completar el trabajo. Después de ajustar el trabajo se ha completado, el evento desencadenante: Guo Xiaoping;
hijo para terminar el trabajo, cambios de estado, el evento desencadenante, se inició el evento.

B Díselo a un términos simples, si A cómo, acaba de hacer una cosa C.

Para lograr el flujo de eventos

Seguimos usando la ventana anterior, haga clic en el botón para conseguir, cambiar el color de fondo de la ventana.

Implementar un evento

introducido

import java.awt.event.ActionListener;

Implementar una interfaz

class  Test implements  ActionListener{   
    public void actionPerformed(ActionEvent actionEvent) {
        System.out.println("执行工作");
    }

El evento registrado al control

package com.company;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class MyFrame extends Frame implements ActionListener {
    public  MyFrame(){
        super("测试");

        setLayout(new FlowLayout());

        Button btn=new Button("Button");
        Font f=new Font("宋体",Font.BOLD,28);
        btn.setFont(f);
        btn.addActionListener(this::actionPerformed);
        add(btn);
        setSize(400,200);
        setVisible(true);
    }

    public void actionPerformed(ActionEvent actionEvent) {
        System.out.println("执行工作");
        setBackground(Color.BLUE);
    }
}

Hay un botón de detector de eventos addActionListener, trabajamos para llevar a cabo actionPerformedlas consolidaciones en ella.
Cuando se produce la condición, se disparará este trabajo.

Sí mamá, no sé lo que son por su nombre.
C #, el evento no es tanto problema, por lo que no es necesario que BB. . .

Además, ActionEvent, hay dos métodos comunes

        actionEvent.getActionCommand();     // 获取对象名称
        actionEvent.getSource()();          // 获取源对象

disposición

AWT, el principal 6 diseño.

  • presentación de flujo FlowLayout
    diseño predeterminado, controles, de arriba a abajo, izquierda a derecha.
  • borde disposición BorderLayout
    borde de la ventana de acoplamiento automático, y con los cambios en la longitud y anchura de la forma.
    archivo
  • diseño de cuadrícula GridLayout
    del recipiente en un número de filas y columnas.
  • CradLayout diseño de la tarjeta
    como una baraja de cartas, cada carta es un control, controles múltiples se apilan, sólo se puede ver uno.
  • GridBagLayout bloque de cuadrícula de diseño
  • NULL coordinar el diseño de posicionamiento utilizando

Crear un formulario y establezca la presentación de flujo

public class MyFrame extends Frame {
    public  MyFrame(){
        super("测试");
        setLayout(new FlowLayout());
        }
        }

Frame forma hereditaria, el método se puede ajustar mediante el diseño setLayout.

método de ensamblaje

Como se muestra en GUI controles son controles comunes diagrama de relación de herencia.
archivo

Asamblea en el recipiente (envase) y los controles.
Container se divide en forma (ventana) y panel (Panel).

Componente es la clase padre de todos los componentes, el componente método comúnmente utilizada es la siguiente

Component类(抽象类)主要方法 
Color getBackground() : 获取部件的背景色 
Font getFont() : 获取部件的显示字体 
Graphics getGraphics(): 获取部件的Graphics属性对象
void setBackground(Color c) : 设置部件的背景
void setEnabled(boolean b) : 是否让部件功能有效 
void setFont(Font f) : 设置部件的显示字体 
void setSize(int width,int height) : 设置部件大小 
void setVisible(boolean b) : 设置部件是否可见 
void setForeground(Color c) : 设置部件的前景色 
Tookit getToolkit() : 取得图形部件的工具集(Toolkit) 
void requestFocus() : 让部件得到焦点 
void add(PopupMenu popup) :给部件加入弹出菜单

Controles comunes

texto

cuadro de texto (campo de texto) sólo puede mostrar una línea de texto, campos de texto (TextArea) se puede visualizar, editar varias líneas de texto.

El constructor del cuadro de texto a continuación

TextField():构造一个单行文本输入框。 
TextField(int):指定长度的单行文本输入框。 
TextField(String):指定初始内容的单行文本输入框。
TextField(String, int):指定长度、指定初始内容。

Constructor siguiente campo de texto

TextArea( ):构造一个文本域。 
TextArea(int, int):构造一个指定长度和宽度的文本域。 TextArea(String):构造一个显示指定文字的文本域。
TextArea(String, int, int):按指定长度、宽度和默认值构造文本域。

Hay métodos comunes de controles de texto

void setEchoChar(‘*’) 设置回显字符 
String getText( ) :获取输入框中的数据 
void setText(String s) :往输入框写入数据 
boolean isEditable( ):判断输入框是否可编辑。 
void select(int start,int end):选定由开始和结 束位置指定的文本。 void selectAll( ):选定所有文本。 

Campo de texto (el TextArea), el método convencional tiene el siguiente dos

append(String s):将字符串添加到文本域的末尾 
insert(String s,int index):将字符串插入到文本域的指定位置

Hay dos eventos caja de texto común
ActionEvent evento
desencadena cuando se pulsa la tecla Intro en el cuadro de texto
de registro: addActionListener()Interfaz: ActionListener
Método:public void actionPerformed(ActionEvent e)

TextEvent eventos
cambian las operaciones (añadir, modificar, borrar) el texto de entrada de componentes de datos
de registro: addTextListener()
Interfaz: TextListener
Método:public void textValueChanged(TextEvent e)

Supongo que te gusta

Origin www.cnblogs.com/whuanle/p/12539621.html
Recomendado
Clasificación