Все методы класса Image служат для загрузки изображений из файлов, ресурсов, потоков, а в некоторых методах можно задавать размеры и трансформацию изображений. Проанализируем основные методы класса Image.
В листинге 6.11 происходит загрузка изображения в приложение, но без использования объекта класса ImageItem, который использовался при рассмотрений примера в листинге 6.6 из раздела 6.8. В листинге 6.6 применялась ссылка на объект класса Image, в этом примере объект классу Image используется напрямую
/** Листинг 6.11 Класс Image */ import javax.microedition.midlet.*; import javax.microedition.Icdui.*; public class MainClassImage extends MIDlet implements CommandListener { // команда выхода из приложения private Command exitMidlet = new Command("Выход", Command.EXIT, 1) ; // объект класса Form, private Form myform = new Form("Класс Image"); // объект mydisplay представляет экран телефона private Display mydisplay; public MainClassImage() { mydisplay = Display.getDisplay(this); } public void startApp() { // перехватываем исключительную ситуацию try { // загрузка изображения Image im = Image.createlmage("Ygornakov.png"); // добавляем загружённый файл в форму myform.append(im); } catch(Java.io.IOException exp{ } // Установка обработчика событий для Form myform.addCommand(exitMidlet); myform.setCommandListener(this); // Отразить текущий дисплей mydisplay .s'etCurrent (myform) ; } public void pauseApp() {} public void destroyApp(boolean unconditional) {} public void сommandAction(Command c, Displayable*d) { // Выход из приложения if (с == exitMidlet) { destroyApp(false); notifyDestroyedf); } } }
На рис. 6.13 показан эмулятор телефона, воссоздающий загруженное изображение, посмотрите, насколько больше экран телефона и как разместилось меньшее по размеру изображение на дисплее.