早教吧 育儿知识 作业答案 考试题库 百科 知识分享

java 画矩形package testFrame;import java.awt.Color;import java.awt.Component;import java.awt.Frame;import java.awt.Graphics;import java.awt.Rectangle;public class FrameTest extends Frame {/*** @param args*/Rectangle rec;Frame f;public void paint(G

题目详情
java 画矩形
package testFrame;
import java.awt.Color;
import java.awt.Component;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Rectangle;
public class FrameTest extends Frame {
/**
* @param args
*/
Rectangle rec;
Frame f;
public void paint(Graphics g)
{
super.paint(g);
g.setColor(Color.black);
g.fillRect(100,100,30,30);
try {
Thread.sleep(500);
}
catch (Exception ex) {
ex.printStackTrace();
}
repaint();
}
FrameTest()
{
f=new Frame("title");
f.setLocation(100,100);
f.setSize(600,400);
f.setVisible(true);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
FrameTest ft=new FrameTest();
}
}
为什么我的代码画不出矩形
我的一个朋友说他能画出~
▼优质解答
答案和解析
你的代码有问题,你的类本身是frame,你也在类中绘制,但是你却没有显示,而是另外定义了一个frame来显示,你修改一下:
import java.awt.Color;
import java.awt.Component;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Rectangle;
public class FrameTest extends Frame {
/**
* @param args
*/

public void paint(Graphics g)
{
super.paint(g);
g.setColor(Color.black);
g.fillRect(100, 100, 30, 30);
try {
Thread.sleep(500);
}
catch (Exception ex) {
ex.printStackTrace();
}
//repaint();
}



FrameTest()
{
super("title");
setLocation(100,100);
setSize(600,400);
setVisible(true);
}

public static void main(String[] args) {
// TODO Auto-generated method stub
FrameTest ft=new FrameTest();

}
}
这样应该没问题了.