Tải bản đầy đủ (.ppt) (39 trang)

SLIDE môn JAVA CHƯƠN 6 graphical user interface

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (409.11 KB, 39 trang )

LẬP TRÌNH JAVA

Chương 6

Graphical User Interface
(GUI)
GV: Đoàn Thanh Sơn


Nội dung


Giới thiệu về GUI (Graphical user interface)



Vật chứa (Container)



Thành phần (Component)



Quản lý cách trình bày (Layout manager)



Xử lý các sự kiện

2/25




1. Giới thiệu về GUI


1. Giới thiệu về 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



Các bộ thư viện: AWT, SWING, SWT…



AWT là viết tắt của Abstract Windowing Toolkit



AWT là một bộ các lớp trong Java cho phép chúng ta tạo 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.

4/25


Giới thiệu về GUI



AWT cung cấp các thành phần khác nhau để tạo GUI:








Vật 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)

5/25


2. Vật chứa (Container)


2. Vật chứa (Container)


Container là vùng mà bạn có thể đặt các thành phần giao diện của
bạn vào đó




Gói java.awt chứa một lớp gọi là Container



JFrame và JPanel là các vật chứa thường được sử dụng

• JFrame là cửa sổ độc lập
• JPanel là vùng nằm trong cửa sổ khác

7/25


Vật chứa (Container)


JFrame: các constructor để tạo frame

• JFrame(): Tạo một frame nhưng không hiển thị
(invisible)
• JFrame(String title): Tạo một frame không hiển
thị, có tiêu đề

8/25


Vật chứa (Container)


Ví dụ

import javax.swing.*;
public class MyFrame extends JFrame {
public MyFrame(String title){
super(title);
}
public static void main(String[] args){
MyFrame myframe=new MyFrame("Hello");
myframe.setSize(300, 200);
myframe.setVisible(true);
myframe.setDefaultCloseOperation(Jframe.EXIT_O
N_CLOSE);
}
}
9/25


Vật chứa (Container)


JPanel được sử dụng để nhóm một số các thành phần lại với nhau

• Hàm khởi tạo: JPanel()


JDialog: là một đối tượng cửa sổ con của một cửa sổ chương trình
chính. Có 2 dạng

• Modal
• Non-modal


10/25


3. Thành phần (Components)


3. Thành phần (Components)


Các lớp thành phần

12/25


Thành phần (Components)


Nhãn (JLabel)

• JLabel()
• JLabel(String labeltext)
• JLabel(String labeltext, int alignment)

13/25


Thành phần (Components)


Ô văn bản (JTextField)







JTextField()
JTextField(int columns)
JTextField(String s)
JTextField(String s, int columns)

14/25


Thành phần (Components)


Vùng văn bản (JTextArea)

• JTextArea()
• JTextArea(int rows, int cols)

15/25


Thành phần (Components)


Nút ấn (JButton)


• JButton()
• JButton(String text)

16/25


Thành phần (Components)


Checkbox và RadioButton

• Checkbox()
• Checkbox(String text)
• Tạo RadioButton
CheckboxGroup cg=new CheckboxGroup();
Checkbox male=new Checkbox(“small", cg, true);
Checkbox female=new Checkbox(“medium", cg, false);

17/25


Thành phần (Components)


Danh sách chọn lựa (Choice List)

Choice colors=new Choice();
colors.addItem("Red");
colors.addItem("Green");


18/25


Thành phần (Components)


Danh sách chọn lựa (JComboBox)

String[] colors= {“Red”,”Green”,”Blue”};
JComboBox cb=new JComboBox(color);

19/25


4. Quản lý cách trình bày


Quản lý cách trình bày


Các kiểu trình bày (Layout manager)








Null layout

Flow layout
Border layout
Grid layout
GridBag Layout

Layout manager được thiết lập bằng phương thức ‘setLayout()’

21/25


Quản lý cách trình bày


Null layout: khi không sử dụng layout manager

• setLayout(null)
• Sử dụng các hàm thiết lập vị trí
public void setSize(Dimension p)
 public void setBounds(Rectangle r)


22/25


Quản lý cách trình bày


FlowLayout manager

• ‘FlowLayout’ là layout manager mặc định cho

Applet và Panel
• Hàm thiết lập
setLayout(new FlowLayout())
 setLayout(new FlowLayout(
FlowLayout.RIGHT))


23/25


Quản lý cách trình bày
Các thành phần được
sắp xếp trong container
từ trái sang phải, từ trên
xuống dưới theo thứ tự
chúng được đưa vào.

24/25


Quản lý cách trình bày


public FlowLayout(int align, int hGap, int vGap)

Xây dựng một FlowLayout mới có cách sắp hàng
(alignment), khoảng trống ngang (horizontal gap), khoảng
trống dọc (vertical gap) xác định. Các khoảng trống giữa
các thành phần được tính bằng pixel.



public FlowLayout(int alignment)

Xây dựng một FlowLayout mới có alignment xác định,
khoảng trống ngang và dọc đều có mặc định bằng 5 pixel.


public FlowLayout()

Xây dựng một FlowLayout mới có cách sắp hàng mặc định
căn giữa và khoảng trống ngang và dọc mặc định bằng 5
25/25
pixel.


×