Professional Documents
Culture Documents
Java 8
Java 8
setVisible(true);
}
@Override
public void paint(Graphics g) {
// Nội dung cần vẽ
}
}
Các đối tượng hình học trong Graphics
• Chuỗi:
– Graphics.drawString(String str, int xCoor, int yCoor);
• Đoạn thẳng:
– Graphics.drawLine(int x1, int y1, int x2, int y2): vẽ một đoạn thẳng từ
điểm đầu tới điểm cuối. Có thể dùng phương thức này để vẽ điểm.
• Đa giác:
– drawPolygon(int x[ ], int y[ ], int numPoints);
– fillPolygon(int x[ ], int y[ ], int numPoints);
Hệ thống màu
• Java sử dụng màu RGB
• Bảng các giá trị màu
Element Range
Red 0-255
Green 0-255
Blue 0-255
• Cú pháp:
– new Color(int red, int green, int blue);
– setColor(Color c);
Hệ thống màu
• Các màu thông dụng
Color Red Green Blue
White 255 255 255
Light Gray 192 192 192
Gray 128 128 128
Dark Gray 64 64 64
Black 0 0 0
Pink 255 175 175
Orange 255 200 0
Yellow 255 255 0
Magenta 255 0 255
Font chữ
• Gói java.awt package cung cấp bởi lớp
‘Font’
• Hàm dựng:
– Font f1 = new Font("Arial", Font.ITALIC, 16);
– g.setFont(f1);
FontMetrics
• Đo các ký tự khác nhau hiển thị trong các
font khác nhau.
• Các phương thức thông dụng:
– getHeight()
– stringWidth(String str)
MouseEvent
• Thông thường, các ứng dụng đồ họa thường đi
với các sự kiện chuột
• Interface MouseListener có các method:
– void mouseClicked(MouseEvent e)
– void mousePressed(MouseEvent e)
– void mouseReleased(MouseEvent e)
– void mouseEntered(MouseEvent e)
– void mouseExited(MouseEvent e)
MouseEvent
• Interface MouseMotionListener có các method:
– void mouseDragged(MouseEvent e)
– void mouseMoved(MouseEvent e)
• Lớp MouseEvent:
– getX(), getY()
– getClickCount()
– getButton()
Bài tập
• Xây dựng chương trình đánh cờ caro sử dụng
chuột
Bài 9: Xử lý đa luồng
Thread
• Thread là luồng xử lý
• Các chương trình đã học đơn giản là các xử lý
đơn luồng (single thread)
• Trong java, có có cơ chế đồng thời xử lý nhiều
công việc cùng một lúc (xử lý đa luồng, multi
thread)
Tạo Thread
• Khi chạy chương trình chính, có 1 thread được
thực hiện. Ta có thể thêm các Thread mới.
• Có 2 cách tạo Thread:
– Cách 1: Kế thừa lớp Thread
– Cách 2: Implement interface Runnable
Cách 1: Kế thừa lớp Thread