我首先要说的是我对java有点新意,所以如果这是一个愚蠢的错误,那就是原因。
我在java中搞乱applet,在设置窗口大小和使用JOptionPane时遇到问题,无论是显示消息还是通过它获取输入,它都会显示三个或更多窗格而不是简单的一个。我在Ubuntu 12.04(x64)上,这是我的测试代码仍然遇到问题:
import javax.swing.JOptionPane;
import java.awt.Graphics;
import java.applet.Applet;
public class Main extends Applet{
public void paint(Graphics g)
{
//setup screen size
setSize((int)500,(int)500);
//print test message
JOptionPane.showMessageDialog(null, "There Should Be One Of Me!");
}
}
答案 0 :(得分:2)
这是预期的:有多少选项窗格作为对paint方法的调用次数:-)后者不能被应用程序代码控制,无论是在AWT还是在Swing中。
作为一般规则,永远不要在绘制周期中调用的方法中更改任何组件状态
答案 1 :(得分:1)
从setSize(..
删除JOptionPane.sh...
和public void paint(Graphics g)
(J)Applet tutorial显示了一些示例
或许更好的方法是使用Swing JFrame代替(J)Applet