我有一个JavaFX程序,可以在我的笔记本电脑屏幕上截取完整的屏幕截图。 程序有一个按钮和ImageView所以当我点击按钮它调用或调用名为image_view()的方法时,它会截取屏幕截图并在ImageView上显示(此时一切正常)
但是,当我使用像while(true)这样的循环使程序每隔两秒拍摄一次屏幕截图时,我在ImageView中没有显示图片 那么我该如何解决呢?
public class FXMLDocumentController {
@FXML
private ImageView display;
@FXML
void image_view(ActionEvent event) throws InterruptedException, AWTException
{
Robot robot=new Robot();
Rectangle rectangle=new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
while (true) {
BufferedImage bufferedImage=robot.createScreenCapture(rectangle);
Image myImage=SwingFXUtils.toFXImage(bufferedImage, null);
display.setImage(myImage);
Thread.sleep(2000);
}
}
}