簡體   English   中英

調整窗口大小時Java AWT小程序白屏

[英]Java AWT applet white screen when resizing window

我有一個使用awt構建的Java applet。

我在面板對象上繪制了一些文本,一切正常。 但是在調整窗口大小時,所有文本都會消失。

不同的JVM和平台之間的這種行為是不同的。

搖擺是不可能的選擇,因為我們必須保持與Microsoft JVM的兼容性。

您必須覆蓋update(Graphics g)並在其中渲染文本。 需要重新繪制窗口時將調用此方法。

在沒有看到您的代碼的情況下,我們不得不猜測,但是是否可能沒有在paint()方法中完成您的文本繪制? 閱讀此內容 ,了解有關AWT繪畫工作原理的詳細信息。

嘗試附加一個ComponentListener,然后從componentResized()內調用paint()。

就像是:

class MyPanel extents Panel implements ComponentListner {
    public MyPanel() {
        addComponentListener(this);
    }
    public void componentResized(ComponentEvent e) {
        paint(getGraphics());
    }
}

更新:您可能應該調用“ repaint()”,而不是直接調用paint()。

暫無
暫無

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

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