特急 线程的run() 函数 和 canvas的update() 函数 我的一个子线程中 的run函数调用了 另外一个函数被调用的这个中有 canvas的 update()函数 这样好像就产生了冲突 子线程执行不了我把哪个update去掉就没问题 了 这事为什么啊 ?怎么解决? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 update是自动掉用的,要另外产生新的线程的 我知道 但还是不知道具体怎么解决 majy()Oo.冲天剑.oO()(技术永无止境 生命永不停息) / 能再解释一下吗 ? 调用需要update部分的paint()方法! public void toMove() { DecideDirection(); Rectangle r = gameFrame.getBounds(); if(Direction == 0 && isOutside()) { yPosition = (int)r.getHeight()+20; } else if(Direction == 0 && !isOutside()) { yPosition -= 5; } else if(Direction == 1 && isOutside()) { xPosition = (int)r.getX(); } else if(Direction == 1 && !isOutside()) { xPosition += 5; } else if(Direction == 2 && isOutside()) { yPosition = (int)r.getY(); } else if(Direction == 2 && !isOutside()) { yPosition += 5; } else if(Direction == 3 && isOutside()) { xPosition = (int)r.getWidth()-20; } else if(Direction == 3 && !isOutside()) { xPosition -= 5; } paintCanvas.resetPostion(xPosition, yPosition); paintCanvas.update(paintCanvas.getGraphics()); }public class Reminder implements Runnable{ public Reminder(Bug b, int s) { bug = b; seconds = s; } public void run() { while(true) { bug.toMove(); try { Thread.currentThread().sleep(10); } catch(Exception e) { } } } private Bug bug; int seconds; } 主要是哪个toMove()函数 我在Reminder 线程的run函数里调用了 toMove()函数 toMove()里又调用了 Canvas(画板)的update() 函数如果我的toMove()里不要那个upDate() 线程正常执行如果有 编译没错 执行的时候 有问题 它的提示如下:java.lang.NullPointerException at java.awt.Canvas.update(Canvas.java:113) at Bug.toMove(Bug.java:155) at Reminder.run(Reminder.java:40) at java.lang.Thread.run(Thread.java:534) PEOPLE NA LI QU LE ? 从错误信息来看你的paintCanvas没有初始化,为NULL 连接打印机打印excel 小问题。swing中的jbutton如何加图片呢?在线等。 小问题 帮忙看看! 流的问题 runtime 执行程序的问题 java网络问题!不是很难,帮着看看吧! JAVA如何控制并口 请问各位怎么判断一个日期处于一个月里面的第几个星期???多谢大家来帮帮忙? 我是初学者,请各位前辈帮忙.我把数组中的内容显示在文本域里,当数据多的时候,他显示一部分就不动了,为什么?如何解决??十万火急,!!!!!! 下面这个异常是怎么回事?悬赏回答!!!! 有关于JAVA对进程与子进程间操作问题,大家一起来看看 随机问题
我知道 但还是不知道具体怎么解决
majy()Oo.冲天剑.oO()(技术永无止境 生命永不停息) /
能再解释一下吗 ?
{
DecideDirection();
Rectangle r = gameFrame.getBounds();
if(Direction == 0 && isOutside())
{
yPosition = (int)r.getHeight()+20;
}
else if(Direction == 0 && !isOutside())
{
yPosition -= 5;
}
else if(Direction == 1 && isOutside())
{
xPosition = (int)r.getX();
}
else if(Direction == 1 && !isOutside())
{
xPosition += 5;
}
else if(Direction == 2 && isOutside())
{
yPosition = (int)r.getY();
}
else if(Direction == 2 && !isOutside())
{
yPosition += 5;
}
else if(Direction == 3 && isOutside())
{
xPosition = (int)r.getWidth()-20;
}
else if(Direction == 3 && !isOutside())
{
xPosition -= 5;
}
paintCanvas.resetPostion(xPosition, yPosition);
paintCanvas.update(paintCanvas.getGraphics());
}
public class Reminder implements Runnable
{
public Reminder(Bug b, int s)
{
bug = b;
seconds = s;
}
public void run()
{
while(true)
{
bug.toMove();
try
{
Thread.currentThread().sleep(10);
}
catch(Exception e)
{
}
}
}
private Bug bug;
int seconds;
}
我在Reminder 线程的run函数里调用了 toMove()函数
toMove()里又调用了 Canvas(画板)的update() 函数如果我的toMove()里不要那个upDate() 线程正常执行
如果有 编译没错 执行的时候 有问题 它的提示如下:java.lang.NullPointerException
at java.awt.Canvas.update(Canvas.java:113)
at Bug.toMove(Bug.java:155)
at Reminder.run(Reminder.java:40)
at java.lang.Thread.run(Thread.java:534)
PEOPLE NA LI QU LE ?