VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • Python
  • PHP
  • Eclipse
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Phần mềm tiện ích
    • Cấu trúc dữ liệu và giải thuật
    • Học lập trình C#
    • Selenium Test
Java Cơ Bản Các Khái Niệm Java OOPs Java String Xử Lý Ngoại Lệ Các Lớp Lồng Nhau

Java AWT

AWT trong java Xử lý sự kiện Java AWT Button trong Java AWT Label trong Java AWT TextField trong Java AWT TextArea trong Java AWT CheckBox trong Java AWT CheckBoxGroup trong Java AWT Choice trong Java AWT List trong Java AWT Canvas trong Java AWT Scrollbar trong Java AWT MenuItem và Menu trong Java AWT PopupMenu trong Java AWT Panel trong Java AWT Dialog trong Java AWT Toolkit trong Java AWT ActionListener trong Java AWT MouseListener trong Java AWT MouseMotionListener trong Java AWT ItemListener trong Java AWT KeyListener trong Java AWT WindowListener trong Java AWT Close Window trong Java AWT Các lớp Adapter trong Java AWT
Java Swing Java I/O Ví Dụ Java I/O Lập Trình Mạng Với Java Java Date Chuyển Đối Kiểu Dữ Liệu Java Collections Java JDBC Các Tính Năng Mới Trong Java Bài Tập Java Có Lời Giải Câu Hỏi Phỏng Vấn Java

Xử lý sự kiện Java AWT


AWT trong java
Button trong Java AWT

Tráng thái của một đối tượng bị thay đổi được gọi là một sự kiện (event). Ví dụ, bấm vào nút, kéo chuột, vv Gói java.awt.event cung cấp nhiều lớp sự kiện và interface Listener để xử lý sự kiện Java AWT.


Nội dung chính

  • Các lớp Java Event và các interface Listener
  • Các bước để thực hiện xử lý sự kiện trong Java AWT
    • Phương thức đăng ký
  • Ví dụ xử lý sự kiện trong Java AWT
    • 1. Xử lý sự kiện Java AWT - bên trong lớp hiện tại
    • Xử lý sự kiện Java AWT - bên trong lớp hiện khác
    • Xử lý sự kiện Java AWT - bên trong lớp nặc danh

Các lớp Java Event và các interface Listener

Các lớp EventCác interface Listener
ActionEventActionListener
MouseEventMouseListener and MouseMotionListener
MouseWheelEventMouseWheelListener
KeyEventKeyListener
ItemEventItemListener
TextEventTextListener
AdjustmentEventAdjustmentListener
WindowEventWindowListener
ComponentEventComponentListener
ContainerEventContainerListener
FocusEventFocusListener


Các bước để thực hiện xử lý sự kiện trong Java AWT

Các bước sau được yêu cầu để thực hiện xử lý sự kiện:

  1. Đăng ký thành phần với trình Listener.

Phương thức đăng ký

Để đăng ký thành phần với trình Listener, có nhiều lớp cung cấp các phương thức đăng ký. Ví dụ:

  • Button
    • public void addActionListener(ActionListener a){}
  • MenuItem
    • public void addActionListener(ActionListener a){}
  • TextField
    • public void addActionListener(ActionListener a){}
    • public void addTextListener(TextListener a){}
  • TextArea
    • public void addTextListener(TextListener a){}
  • Checkbox
    • public void addItemListener(ItemListener a){}
  • Choice
    • public void addItemListener(ItemListener a){}
  • List
    • public void addActionListener(ActionListener a){}
    • public void addItemListener(ItemListener a){}

Ví dụ xử lý sự kiện trong Java AWT

Chúng tôi có thể đặt mã xử lý sự kiện vào một trong các vị trí sau:

  1. Bên trong lớp hiện tại.
  2. Bên trong lớp khác.
  3. Bên trong lớp nặc danh.

1. Xử lý sự kiện Java AWT - bên trong lớp hiện tại

package vn.viettuts.awt;

import java.awt.Button;
import java.awt.Frame;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class AWTEventHandling1 extends Frame implements ActionListener {
    private TextField textField;

    public AWTEventHandling1() {

        // tạo các thành phần
        textField = new TextField();
        textField.setBounds(60, 80, 170, 20);
        Button button = new Button("click me");
        button.setBounds(100, 120, 80, 30);

        // đăng ký trình listener
        button.addActionListener(this);

        // thêm thành phần, kích thước, layout, khả năng hiển thị
        setTitle("Vi du xu ly su kien Java AWT");
        add(button);
        add(textField);
        setSize(400, 300);
        setLayout(null);
        setVisible(true);
    }

    @Override
    public void actionPerformed(ActionEvent e) {
        textField.setText("Welcome to Java AWT");
    }

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

Kết quả:

Ví dụ Xử lý sự kiện Java AWT

Xử lý sự kiện Java AWT - bên trong lớp hiện khác

Tạo lớp view: AWTView.java

package vn.viettuts.awt;

import java.awt.Button;
import java.awt.Frame;
import java.awt.TextField;

public class AWTView extends Frame {
    TextField textField;

    AWTView() {
        // tạo các thành phần
        textField = new TextField();
        textField.setBounds(60, 80, 170, 20);
        Button button = new Button("click me");
        button.setBounds(100, 120, 80, 30);
        // đăng ký listener
        Controller obj = new Controller(this);
        button.addActionListener(obj);
        // thêm thành phần, kích thước, layout, khả năng hiển thị
        setTitle("Vi du xu ly su kien Java AWT");
        add(button);
        add(textField);
        setSize(400, 300);
        setLayout(null);
        setVisible(true);
    }
}

Tạo lớp controller: Controller.java

package vn.viettuts.awt;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class Controller implements ActionListener {
    AWTView obj;

    Controller(AWTView obj) {
        this.obj = obj;
    }

    @Override
    public void actionPerformed(ActionEvent e) {
        obj.textField.setText("Welcome to Java AWT");
    }
}

Tạo lớp AWTEventHandling2.java

package vn.viettuts.awt;

public class AWTEventHandling2 {
    public static void main(String[] args) {
        AWTView view = new AWTView();
    }
}

Kết quả:

Ví dụ Xử lý sự kiện Java AWT

Xử lý sự kiện Java AWT - bên trong lớp nặc danh

package vn.viettuts.awt;

import java.awt.Button;
import java.awt.Frame;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class AWTEventHandling3 extends Frame {
    TextField textField;

    AWTEventHandling3() {
        textField = new TextField();
        textField.setBounds(60, 50, 170, 20);
        Button button = new Button("click me");
        button.setBounds(50, 120, 80, 30);

        button.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                textField.setText("Hello World!");

            }
        });
        setTitle("Vi du xu ly su kien Java AWT");
        add(button);
        add(textField);
        setSize(400, 300);
        setLayout(null);
        setVisible(true);
    }

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

Kết quả:

Ví dụ Xử lý sự kiện Java AWT
AWT trong java
Button trong Java AWT

Recent Updates

Toán tử dấu 2 chấm (::) trong Java 8Lambda Expression - Biểu thức Lambda trong java 8Bài tập Java - Sắp xếp nhanh (Quick Sort) trong JavaBài tập Java - Sắp xếp chèn (Insertion Sort) trong JavaBài tập Java - Sắp xếp nổi bọt (Bubble Sort) trong JavaBài tập quản lý sinh viên trong JavaHashSet trong javaHashMap trong javaLớp WindowAdapter trong Java SwingLớp MouseMotionAdapter trong Java SwingLớp MouseAdapter trong Java SwingLớp KeyAdapter trong Java Swing

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn

Danh sách bài học

Học java
Học servlet
Học jsp
Học Hibernate
Học Struts2
Học Spring
Học SQL

Câu hỏi phỏng vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

About VietTuts.Vn

Hệ thống bài học trên VietTuts.Vn bao gồm các bài lý thuyết và thực hành về các công nghệ java và công nghệ web. Các bài lý thuyết trên hệ thống VietTuts.Vn được tham khảo và tổng hợp từ các trang http://javatpoint.com, http://www.tutorialspoint.com, http://docs.oracle.com/en …

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | VietTuts.Vn team | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml