Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: GUI и Java FX приложения > Как обойтись одним ImageObserver


Автор: Royan 10.10.2005, 17:41
Покопавшись в архивах форума надыбал вот такой код

Код

MediaTracker mt = new MediaTracker(this); // this - Component
Image im = Toolkit.getDefaultToolkit().getImage("myImage.gif");
mt.addImage(im, 1); // 1 - ID
try {
       mt.waitForID(1);
} catch (InterruptedException e) 
{
       e.printStackTrace();
}


Все понятно все работает, но таки мучает меня вопрос. Стоит задача синхронизировать работу метода getSize(). Например имеем

Код

Image img = Toolkit.getDefaultToolkit().getImage(imagePath);
ImageWrapper iw = new ImageWrapper(img); //Тут картинка рисуется
System.out.println(iw.getSize()); //Вот тут мы получим -1 и -1


Ясное дело ImageWrapper имплементирует ImageObserver, так вот возможно ли при таком раскладе синхронизировать ImageWrapper#getSize() не прибегая к помощи MediaTracker'а, пользуясь исключительно функциональностью ImageObserver#imageUpdate()?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)