Программирование мобильных телефонов на Java


Программирование мобильных телефонов

  • Введение
  • Глава 1. Устройство мобильных телефонов
  • Глава 2. Платформа Java 2 Micro Edition
  • Глава 3. Средства разработки мобильных приложений
  • Глава 4. Телефонные эмуляторы
  • Глава 5. Механизм работы приложений Java 2 ME
  • Глава 6. Классы пользовательского интерфейса
  • Глава 7. Программирование графики
  • Глава 8. Техника создания игр
  • Глава 9. Мобильная мультимедиа-библиотека
  • Заключение
  • Приложение 1. Основы языка Java
  • Приложение 2. Справочник по Java 2 Micro Edition

     

    Программирование на Java

  • Введение
  • Глава 1. Встроенные типы данных, операции над ними
  • Глава 2. Объектно-ориентированное программирование в Java
  • Глава 3. Пакеты и интерфейсы
  • Глава 4. Классы-оболочки
  • Глава 5. Работа со строками
  • Глава 6. Классы-коллекции
  • Глава 7. Классы-утилиты
  • Глава 8. Принципы построения графического интерфейса
  • Глава 9. Графические примитивы
  • Глава 10. Основные компоненты
  • Глава 11. Размещение компонентов
  • Глава 12. Обработка событий
  • Глава 13. Создание меню
  • Глава 14. Апплеты
  • Глава 15. Изображения и звук
  • Глава 16. Обработка исключительных ситуаций
  • Глава 17. Подпроцессы
  • Глава 18. Потоки ввода/вывода
  • Глава 19. Сетевые средства Java
  • Приложение. Развитие Java

  • 

    3fb01dc2


     

     

    6.2.7. Класс Gauge



    С помощью класса Gauge создается графический измеритель различных процессов. То есть, возможно осуществить графическое отображение, например процесса загрузки файла, сохранения игры, поиска информации и т.д. Представление любого из процессов в графическом виде, дает возможность создать красивое интерактивное приложение. Визуальное отображение процесса осуществляется в виде заданного по размеру горизонтального столбца, который закрашивается слева направо по мере выполнения процесса. К сожалению, определенного стандарта в графическом представлении, скажем того же столбца, не существует и каждый из производителей представляет свой разработанный вид графического контекста. На рис 6.9, изображен эмулятор телефона с графическим измерителем процесса.

    Класс Gauge имеет всего один конструктор, необходимый при создании объекта этого класса. Разберем конструктор класса Gauge:

    publicGauge(String label,
    
    boolean interactive,
    
     int maxValue, int initialValue)
    



    Рис 6.9. Эмуляторы телефонов, показывающие использование класса Gauge


    Параметры конструктора Gauge:

    •  label - метка или название процесса связанного с объектом Gauge;
    •  interactive - имеются два значения: true для интерактивного режима и false — для не интерактивного режима;
    •  maxValue - максимальное значение, задающее диапазон длительности всего процесса. Может быть установлено при помощи значения INDEFINITE;
    •  static int INDEFINITE - специальное значение, устанавливающее максимальную величину при неизвестном диапазоне течения всего процесса;
    •  initialValue - параметр может быть инициализирован значением от нуля и до значения в параметре maxValue. Этим значением инициализируется начальный отсчет, от которого происходит увеличение визуального представления работы процесса. Кроме числовых значений возможно применение заданных констант:
    •  static int CONTINUOUS_IDLE - задает непрерывное циклическое течение процесса для не интерактивного режима при неопределенном диапазоне;
    •  static int CONTINUOUS_RUNNING -задает непрерывное бегущее течение процесса для не интерактивного режима при неопределенном диапазоне;
    •  static int INCREMENTAL_IDLE- задает пошаговое циклическое течение процесса для не интерактивного режима при неопределенном диапазоне; .
    •  static int INCREMENTAL_UPDATING - задает пошаговое обновление течения процесса для не интерактивного режима при неопределенном диапазоне.


    Методы класса Gauge

    Методы, имеющиеся в составе класса Gauge, позволяют настраивать графическое отображение течение процесса на экране телефона, рассмотрим некоторые из методов.

    •  void addCommand (Command cmd) — добавляет команду;
    •  int getMaxValue () — получает значение максимального диапазона работы процесса;
    •  int getValue ()-получает текущее значение в процессе работы;
    •  void setltemCommandListener (ItemCommandListener 1) -устанавливает обработчик событий;
    •  void setLabel (String label) - устанавливает метку для элемента;
    •  void setLayout (int layout) - устанавливает директивы для элемента;
    •  void setMaxValue (int maxValue) - устанавливает максимальное значение течения процесса;
    •  void setPreferredSize(int width, int height) -задает ширину и высоту для графического представления всего течения процесса;
    •  void setValue(int value) - устанавливает текущее значение процесса.


    В примере создается простой измеритель течения процесса в виде прямоугольника, максимальный диапазон задан значением десять. В листинге 6.7 показано использование класса Gauge.

    / * *
    
    Листинг 6.7 Класс Gauge
    
    */
    import javax.microedition.midlet.*;
    
     import javax.microedition.Icdui.*;
    
    public class MainClassGauge extends MIDlet implements CommandListener
    
    {
    
    // команда выхода из приложения
    
    private Command exitMidlet = new Command!"Выход",
    Command.EXIT, 1);
    
    // объект класса Form
    
    private Form myform = new Form("Класс Gauge");
    
    // объект mydisplay представляет экран телефона
    
    private Display mydisplay;
    
    public MainClassGauge()
    
    {
    
    mydisplay = Display.getDisplay(this) ;
    
    }
    
    public void startApp()
    
     {
    
    // добавить объект класса Gauge
    
    myform.append(new Gauge("Прогресс:", true, 10, 5 ));
    
    // установка обработчика событий для Form
    
    myform.addCommand(exitMidlet);
    
    myform.setCommandListener(this);
    
    // отразить текущий дисплей
    
    mydisplay.setCurrent(myform);
    
    }
    
    public void pauseApp() {}
    
    public void destroyApp(boolean unconditional) {}
    
    public void commandAction(Command c, Displayable d)
    
    {
    
    // выход из приложения
    
    if (с = = exitMidlet)
    
    {
    
    destroyApp(false);
    
    notifyDestroyed();
    
    }
    
     }
    
    }
    


    Откомпилировав этот пример, вы увидите на экране прямоугольник, наполовину закрашенный темным цветом. Использование класса Gauge позволяет создавать экранные заставки отображающие, например, процесс загрузки Приложения. Для того чтобы пользователь не наблюдал за черным экраном телефона в момент загрузки очередного процесса, создайте класс Gauge и используйте его по назначению.

     
    -
    



    Copyright © vzlom-1.ru 2020-2021