'drawString java.awt' không thể dùng được trên macOS

Chào mọi người, em có 1 chương trình, chạy trên intelij, và hđh macOS như sau

public void drawScreenBeforeNewTry(Graphics2D g2) {
    g2.setColor(Color.DARK_GRAY);
    g2.fillRect(0, 0, GameFrame.SCREEN_WIDTH, GameFrame.SCREEN_HEIGHT);
    g2.setColor(Color.white);
    g2.drawString("GAME OVER", 50, 50);
}

vấn đề ở đây à em đã in những thứ trên ra, nhưng tất cả các hàm như fillRect, hay fill3DRect, hay drawImage… nói chung mọi hàm đều có thể in ra màn hình, nhưng tại sao chỉ có hàm drawString, drawChar… những cái liên quan tới kí tự lại không thể dùng được ?. Máy của em sau khi chạy xong hàm trên thì có in ra màn hình có màu DARK_GRAY (vì chương trình nó chia nhiều class nên em không thể coppy hết được, mong mọi người thông cảm) nhưng không in ra bất kì chuỗi kí tự nào. Và vẫn chương trình ấy chạy trên netbeans trên window của máy thằng bạn em, thì lại in ra chữ “GAME OVER” đó. Vậy vấn đề ở đây là gì ạ ? mong mọi người giúp em !! tối nay deadline tự nhiên lai sinh ra lỗi này @@

Có thể đó một lỗi của Java trên Mac.

Tham khảo:

1 Like

em đã thủ cách Graphics.drawGlyphVector đó, nhưng cũng không được ạ :(((

Xem ra java awt trên Mac không hoạt động ổn rồi.
Thử:

  • Xóa nền bằng:
g2.setBackground(Color.DARK_GRAY);
g2.clearRect(...);

Graphics2D.setBackground()
Graphics.clearRect(int, int, int, int)

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