Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java AWT小程序在调整窗口大小时显示白色屏幕_Java_Applet_Awt - Fatal编程技术网

Java AWT小程序在调整窗口大小时显示白色屏幕

Java AWT小程序在调整窗口大小时显示白色屏幕,java,applet,awt,Java,Applet,Awt,我有一个使用awt构建的java小程序 我在一个面板对象上画了一些文字,一切都很顺利。 但是当调整窗口大小时,所有文本都消失了 这种行为在不同的JVM和平台之间是不同的 移动到swing是不可能的选择,因为我们必须保持与Microsoft JVM的兼容性。您必须覆盖更新(图形g),并在其中呈现文本。当需要重新绘制窗口时,将调用此方法。如果没有看到您的代码,我们不得不猜测,但是是否有可能您的文本绘制不是在paint()方法中完成的?有关AWT绘制工作原理的详细信息。请尝试附加一个Component

我有一个使用awt构建的java小程序

我在一个面板对象上画了一些文字,一切都很顺利。 但是当调整窗口大小时,所有文本都消失了

这种行为在不同的JVM和平台之间是不同的


移动到swing是不可能的选择,因为我们必须保持与Microsoft JVM的兼容性。

您必须覆盖
更新(图形g)
,并在其中呈现文本。当需要重新绘制窗口时,将调用此方法。

如果没有看到您的代码,我们不得不猜测,但是是否有可能您的文本绘制不是在
paint()
方法中完成的?有关AWT绘制工作原理的详细信息。

请尝试附加一个ComponentListener,然后从ComponentResistized()中调用paint()

比如:

class MyPanel extents Panel implements ComponentListner {
    public MyPanel() {
        addComponentListener(this);
    }
    public void componentResized(ComponentEvent e) {
        paint(getGraphics());
    }
}
更新:您可能应该调用'repaint()'而不是直接调用paint()。

“我们必须保持与Microsoft JVM的兼容性。”(唱)“我要'像1999年那样编程!”(向Prince道歉)。