当前位置:编程学习 > JAVA >>

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写~

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,