Как вы загружаете объект java.awt.Image
из файла и знаете, когда он загрузился?
Java.awt.Image из файла
Ответ 1
Используйте java.awt.MediaTracker.
Здесь полный пример.
В принципе,
toolkit = Toolkit.getDefaultToolkit();
tracker = new MediaTracker(this);
Image image = toolkit.getImage("mandel.gif");
tracker.addImage(image, 0);
tracker.waitForAll();
Ответ 2
ImageIO
Вспомогательный класс предлагает методы для чтения и записи изображений из/в файлы и потоки.
Чтобы прочитать изображение из файла, вы можете использовать ImageIO.read(File)
(который возвращает BufferedImage
).
Но поскольку BufferedImage
является подклассом Image
, вы можете сделать:
try {
File pathToFile = new File("image.png");
Image image = ImageIO.read(pathToFile);
} catch (IOException ex) {
ex.printStackTrace();
}
Ответ 3
Я бы использовал ImageIcon
.
Таким образом, вам не нужно беспокоиться о каких-либо проверенных исключениях. Также обратите внимание, что при загрузке изображений из файловых ресурсов используется MediaTracker
.
ImageIcon icon = new ImageIcon("image.png");
Image image = icon.getImage();