1. Giới thiệu về Java AWT
Các ứng dụng phần mềm hiện nay vô cùng thân thiện vì được trình bày nhiều màn hình giao diện đồ họa đẹp mắt. Các ngôn ngữ lập trình hiện nay được cung cấp các đối tượng đồ họa, chúng có thể được điều khiển bởi người lập trình viên, hay bởi người sử dụng. Một trong số những kết quả quan trọng nhất chính là các ngôn ngữ hiện nay được dựa trên Giao diện người dùng đồ họa (Graphical User Interface - GUI).
GUI cung cấp chức năng nhập liệu theo cách thân thiện với người dùng. GUI biến đổi từ ứng dụng đến ứng dụng và có thể chứa nhiều điều khiển như textbox, label, listbox hay các điều khiển khác. Các ngôn ngữ lập trình khác nhau cung cấp nhiều cách khác nhau để tạo GUI. Các phần mềm giống như VB hay VC++ có thể cung cấp chức năng kéo và thả trong khi đó phần mềm giống như C++ yêu cầu người lập trình phải viết toàn bộ mã để xây dựng một GUI. Một phần tử (element) GUI được thiết lập bằng cách sử dụng thủ tục sau:
- Tạo element, instance, checkbox, label, hay listbox
- Xác định sự xuất hiện khởi đầu của các phần tử
- Quyết định xem phần tử đó có nên chiếm giữ vị trí được chỉ ra hay không
- Thêm phần tử vào giao diện trên màn hình
Một thành phần (component) GUI là một đối tượng trực quan. Người dùng tương tác với đối tượng này thông qua con trỏ chuột hay bàn phím. Các thành phần như là button, label v.v… có thể được nhìn thấy trên màn hình. Bất kỳ thao tác nào áp dụng đến tất cả các thành phần GUI đều được tìm thấy trong lớp đối tượng Component. Để tạo các thành phần GUI này, chúng ta cần sử dụng các lớp tồn tại trong gói java.awt.
AWT có nghĩa là Abstract Windowing Toolkit. AWT là một bộ các lớp trong Java cho phép chúng ta tạo một GUI và chấp nhận các nhập liệu của người dùng thông qua bàn phím và chuột. AWT cung cấp các item khác nhau để tạo một GUI hiệu quả và lôi cuốn người sử dụng. Các item này có thể là:
- Thùng chứa (Container)
- Thành phần (Component)
- Trình quản lý cách trình bày (Layout manager)
- Đồ họa (Graphic) và các tính năng vẽ (draw)
- Phông chữ (Font)
- Sự kiện (Event)
Hệ thống phân cấp lớp AWT:
2. Container
Container là vùng mà bạn có thể đặt các thành phần của bạn vào đó. Bất cứ vật gì mà kế thừa từ lớp Container sẽ là một container. Ví dụ như Applet là một container, applet được dẫn xuất từ panel, lớp panel lại được dẫn xuất từ lớp Container.
Các đối tượng container thường được sử dụng như:
3. Component
Một component có thể được đặt trên giao diện người dùng, có thể được thay đổi kích thước hay làm cho nhìn thấy được. Các component thường xuyên được sử dụng trong java như:
- Label
- Textfield
- TextArea
- Button
- Checkbox
- RadioButton
- Choice List
4. Layout Manager
Layout manager điều khiển cách trình bày vật lý của các phần tử GUI như là button, textbox, option button v.v… Một layout manager tự động bố trí các thành phần này trong container.
Các layout manager thường được sử dụng như:
- Flow Layout
- Border Layout
- Card Layout
- Grid Layout
- GridBag Layout
5. Xử lý sự kiện
Các hệ thống GUI xử lý các tương tác người dùng với sự trợ giúp của mô hình eventdriven. Tương tác của người dùng có thể là di chuyển chuột, nhấn phím, nhả phím v.v…Tất cả các thao tác này thiết lập một sự kiện của một vài kiểu nào đó.
Việc xử lý những sự kiện này phụ thuộc vào ứng dụng. Abstract Windowing Toolkit (AWT) xử lý một vài sự kiện. Môi trường mà các ứng dụng này được thi hành ví dụ như trình duyệt cũng có thể xử lý các điều khiển khác. Người lập trình viên cần phải viết một hàm xử lý sự kiện.
Các sự kiện thường được bắt trong Java tiêu biểu như:
- ActionListener
- AdjustmentListener
- ComponentListener
- FocusListener
- ItemListener
Như vậy, thông qua bài học này, chúng ta đã có cái nhìn tổng quan về Java AWT, sang bài học tiếp theo chúng ta sẽ cùng đi sâu vào tìm hiểu từng đối tượng cụ thể trong Java AWT. Cảm ơn các bạn đã đọc.