【发布时间】:2014-08-18 06:40:26
【问题描述】:
为什么这不起作用?它向我显示了 GUI,但没有显示油漆。我如何将其更改为两个类?
import java.awt.Graphics;
import javax.swing.JFrame;
public class runpaintgui extends JFrame{
public static void main(String[] args){
JFrame frame = new JFrame();
frame.setSize(5000,2000);
frame.setResizable(false);
frame.setTitle("game");
frame.setVisible(true);
}
public void paint(Graphics g){
super.paint(g);
g.drawString("adsf",40,45);
g.draw3DRect(50, 30, 600, 700, true);
repaint();
}
}
【问题讨论】:
-
“如何将其更改为两个类?”是什么意思
-
永远不要调用 repaint();在paint()/paintComponent()中,因为可以创建无限循环
-
尝试扩展您的面板并像post 说的那样覆盖paintComponent() 方法。
-
"frame.setSize(5000,2000);" 你真的有一个 10 兆像素的显示器吗?这是什么,Jumbotron?
-
"runpaintgui";使用一些命名规则是一个好习惯。可以参考java.about.com/od/javasyntax/a/nameconventions.htm
标签: java swing jframe paint repaint