Chủ đề: Thắc mắc cách vẽ hình trong Java
-
19-10-2013, 01:00 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Thắc mắc cách vẽ hình trong Java
Mình có đoạn code sau:
Mã:public class GUITest { public static void main(String[] args) { JFrame frame = new JFrame(); frame.setSize(400, 400); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); JOptionPane.showMessageDialog(null,"HellWorld!"); Graphics g = frame.getGraphics() g.drawRect(10, 30, 100, 100); } }
thì không hiện hình vuông lên nữa! tksView more random threads:
- hướng dẫn bài tập với mẫu singleton
- Phuơng pháp học lập trình java
- Xin hướng dẫn về lấy dữ liệu HTML từ các website
- Thắc mắc lập trình socket trong java
- [Help] Các bạn rành java giúp mình bài tập này với , sắp tới hạn nộp rồi
- Nhận dạng chữ số từ dữ liệu
- Giúp đỡ về game phiêu lưu
- Video dạy Java căn bản dễ hiểu nhất
- [Javascript] Đọc file trong javascript.
- event Jbutton in java
-
19-10-2013, 06:59 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi kaito_kid_1012
-
20-10-2013, 07:24 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Trong trường hợp này, sau khi hiện JoptionPanel, JFrame không tự vẽ lại, nên hình vẽ vẫn còn. Nếu có thao tác làm JFrame vẽ lại (thay đổi kích thước frame...) thì hình vừa vẽ sẽ mất.
Không nên dùng JFrame.getGraphics() vì nó chỉ trả về đối tượng Graphic tạm thời. Nếu muốn vẽ trên thành phần nào đó thì nên mở rộng một lớp con từ nó (extends). Xem: http://stackoverflow.com/a/15991175/1841854
Câu hỏi của bạn giống như câu đố mà các thầy cô hay đố [IMG]images/smilies/smile.png[/IMG]).
Vì sao mà chính JOptionPanel lại ngăn JFrame vẽ lại được.
Trên đây chỉ là phỏng đoán, qua một số đoạn mã (dựa trên câu hỏi của bạn) mình vừa thử xong, không hẳn là chính xác.
-
21-10-2013, 07:02 PM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi SITUVNX
Như bạn nói thì JFrame trong khi chạy luôn tự vẽ lại và khi có JOptionpane thì thằng này ngăn sự tự vẽ lại của JFrame ak?
-
21-10-2013, 07:16 PM #5Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Khi không có JoptionPanel thì nó không hiện hình đã vẽ => JFrame đã vẽ lại.
Nhưng khi có JOptionPanel thì vẫn hiện hình, giống như có gì đã chặn quá trình vẽ lại của JFrame. Mò thôi.
Không chỉ dừng lại ở việc sử dụng nguyên liệu cao cấp, mỗi công trình còn được "chăm sóc" bằng 4 dịch vụ xuất sắc của Tre Nghệ. Từ việc tư vấn, thiết kế đến thi công và hoàn thiện, mọi quy trình đều...
Chất Lượng và Sáng Tạo: Kiến Trúc...