Cách sử dụng paint trong java

Em có 2 cái frame thì làm sao để chỉ định hàm paint vẽ vào cái frame nào ạ.

public class BieuDo extends JPanel{

private static final long serialVersionUID = 1L;

public BieuDo() {
	JFrame bd = new JFrame();
	bd.setPreferredSize(new Dimension(500, 700));
	bd.pack();
	bd.setVisible(true);
}

public void paint(Graphics g) {
	g.setColor(Color.BLACK);
	g.drawString("Hello", 50, 50);
}

}
em tạo 1 class như thế này rồi tạo đối tượng bên hàm main nhưng không có frame nào vẽ được ạ

1 Like

up hàm main luôn đi bạn

2 Likes

hơi dài xíu nên e nghĩ k cần đâu a. e chỉ muốn hỏi là e có 2 cái JFrame f1, f2 giờ sao để chỉ định cho cái paint(Graphics g) nó vẽ vào frame nào thôi ạ

Hàm paint là auto được gọi bởi fw. Bạn không phải care phần đấy. Ngoài ra bạn cần phải học lại 1 khóa về oop trước khi làm tiếp.
Hàm main bạn cho là không quan trọng thực ra là lỗi 99% nó đều nằm ở hàm đấy nên bạn không up lên thì chẳng ai giúp nổi bạn

3 Likes

hàm main của e chỉ có 1 dòng dùng để call constructor thôi a ơi. cái phần trên kia a bỏ qua đi cũng được. e chỉ muốn hỏi là e có 2 cái JFrame f1, f2 giờ sao để chỉ định cho cái paint(Graphics g) nó vẽ vào frame nào thôi ạ. e muốn chỉ định cho nó sẽ vẽ vào đâu a oi

Nhìn bạn viết cực kì “ngứa mắt”.
Tạo một JPanel, nhưng trong hàm dựng lại tạo JFrame. Nghĩa lý gì đây?

2 Likes

Chuẩn. Không hề có hệ thống nào cả. Cả câu hỏi cũng rối não nữa. Cho topic 1 flag để nhanh chìm xuống

Làm theo ý bạn thì BieuDo phải kế thừa từ JFrame. Chỉ thế!

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?