2
此循环工作正常主功能,但当复制此循环代码在下按钮按下操作,然后它不起作用。它仅在最后一次迭代中显示图像,否则显示空白。imgpanel.setImage(im);在循环下不工作按钮被按下功能,但在一次通过工作正常
public void buttonPressed() {
BufferedImage im = null;
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
int j=100;
for(int i=0;i<j;i++) {
im = camera.captureImage();
tracker.setImage(im);
if (previous.x == -1) {
// previous = tracker.searchCorrelation();
previous = tracker.trackMarker();
} else {
// previous =tracker.searchCorrelation(previous);
previous = tracker.sayemSearch(previous);
}
if (previous.x != -1) {
System.out.println("prevX" + previous.x + "prevY" + previous.y);
im = trackedImage(im, previous);
}
System.out.println("prevX" + previous.x);
// System.out.println("prevY"+previous.y);
imgpanel.setImage(im);
System.out.println("set");
//break;//When i write break then it works
}
}
我在setImage中调用了repaint()函数,但它没有工作。请您详细解释。 – 2012-03-29 09:28:16
也可能需要在顶级容器上调用'repaint',即frame/view/canvas。 – Neet 2012-03-29 09:36:30
但是为什么它在Main函数中工作正常(我已经在上面提到过) – 2012-03-29 09:41:39