java代码纠错! 能编译成功,可是运行不了! 我的目的是做个动圆!在线等待!
import javax.swing.*;
import java.awt.*;
class myPanel extends JPanel{
int x=0;
public void paint(Graphics g)
{ super.paint(g);
g.setColor(Color.RED);
g.fillOval(x,x,50,50);
} }
public class GamePanel extends JFrame implements Runnable
{
int sleepTime=200;
Thread move;
myPanel a=new myPanel();
public GamePanel(){
super("移动球");
add(a);
move.start();
setSize(500,400);
setVisible(true);
}
public void run(){
try{ move.wait(sleepTime);
a.x+=20;}
catch(InterruptedException e){
}
}
public static void main(String args[]){
new GamePanel().setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
追问:偶,呵呵!忘了,可是圆为何不动呢?还是不动呀??
答案:import javax.swing.*;
import java.awt.*;
public class GamePanel extends JFrame implements Runnable
{
int sleepTime=1000;
int x=0;
private static int y=0;
Thread move = new Thread(this);
myPanel a=new myPanel();
public GamePanel(){
super("移动球");
setSize(500,400);
setVisible(true);
move.start();
}
public void paint(Graphics g)
{
super.paint(g);
g.setColor(Color.RED);
g.fillOval(x,x,50,50);
}
public void run(){
while(true){
if(x<=350){
x += 50;
}else{
y += 10;
x = y;
}
repaint();
try{
move.sleep(sleepTime);
}catch(InterruptedException e){
}
}
}
public static void main(String args[]){
GamePanel circleFrame = new GamePanel();
circleFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
移动圆代码
其他:你把异常信息打出来看看,catch(InterruptedException e){
e.printStackTrace()
} public GamePanel(){
super("移动球");
add(a);
move.start();
setSize(500,400);
setVisible(true);
}
这里要改,你的线程个根本就没有初始化
应该改为:
public GamePanel(){
super("移动球");
add(a);
move=new Thread(this);
move.start();
setSize(500,400);
setVisible(true);
} ojdbc14.jar这个包你硬盘里有吧?
如果有,
方法一, 把ojdbc14.jar作为一个目录一样,加入环境变量CLASSPATH.
方法二, java -cp参数.内容用;号分隔
比如 java -cp d:\lib\ojdbc14.jar;(这儿写其它路径) xxxx (假定xxxx为你的MAIN CLASS)
有可能这一串比较长,为了免得每次都输入,你可以建一个批处理程序,比如起名叫run.bat ,把这一串命令写进去.
上一个:JAVA是指什么?
下一个:java , 用单元格计算圆环的面积, 使用FOR 循环的~求高手啊!!有伪代码,求怎么用java写~