簡體   English   中英

Java鼠標光標圖像不顯示,重繪錯誤

[英]Java mouse cursor image not showing up, repaint error

我為我的視頻游戲創建了兩個光標:

        // blank cursor image
        BufferedImage cursorImg = new BufferedImage(16, 16, BufferedImage.TYPE_INT_ARGB);

        blankCursor = toolkit.createCustomCursor(
                cursorImg, new Point(0, 0), "blank cursor");

        customCursor = toolkit.createCustomCursor(
            MY_IMAGE, new Point(0,0) , "custom cursor");

我在啟動游戲時將鼠標光標設置為空白:

this.setCursor(blankCursor);

然后,在某些條件下,我想再次顯示我的光標:

this.setCursor(customCursor);

空白光標有效。 自定義光標永遠不會出現。 (請注意,我知道該行正在運行,因為我使用的是System.out.println 。我也知道光標圖標有效,因為如果我切換兩者,則customCursor顯示而空白光標不會顯示)

所以問題是:為了顯示我的第二個光標圖標,我需要做什么重繪/刷新/重新驗證?

此外,我很確定游標沒有setVisible()方法,但如果有不同的更好的解決方案也將受到歡迎。

不確定重新繪制或驗證對您的情況是否有幫助:光標可能是由系統繪制的並且有一定的限制。 在您的情況下,圖像可能無效並透明,這就是createCustomCursor所做的:

創建一個新的自定義光標對象。 如果要顯示的圖像無效,光標將被隱藏(完全透明) ,熱點將設置為 (0, 0)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM