Платформа программирования J2ME для портативных устройств

        

Ресурс каждой региональной


import javax.microedition.lcdui.Image;

import Java.io.lOException;

/'**

Класс, представляющий локализованные ресурсы для французского языка региона Франции.

Обратите внимание на использование последовательностей

переключения уникода в строковых литералах. Использование последовательностей

переключения уникода в строковых литералах означает, что мы можем записать

этот файл с помощью одних только символов ASCII, делая его эксплуатацию

более легкой. Легко добавлять комментарии для создания удобочитаемых строк.

*/

public class I18NDemoResources_fr_FR

extends ListResourceBundle

{



// Содержит один из локализованных ресурсов. Нам необходимо

// инициализировать данную переменную в статическом

// инициализаторе данного класса.

private static Image applcon;

private Object [][] contents =

{ {"title", "All\uOOf4, tout le Monde"), // Form title.

// Создаем текст: "My third MIDlet". ("greeting", "Mon troisi\uOOe8me MIDlet"),

// «Кнопка была нажата» ("Button was Pressed").

{"alert_title", "Bouton a \uCOe9t\uOOe9 press\uOOe9"),

// «Кнопка была нажата» ("The button was pressed").

{"alert_text", "Le bouton a \uOOe9t\uOOe9 press\uOOe9!"},

("exit", "Sortie"), // Пункт меню «Выход» ("Exit").

("menu", "Menu"), // Экранная клавиша «Меню» ("Menu").

("cancel", "Quitter"), // Пункт меню «Отмена» ("Cancel").

("stop", "Arreter"), // Пункт меню «Стоп» ("Stop").

("ok", "OK"), // Пункт меню "OK".

("alert", "Alerte"), // Экранная клавиша «Уведомление» ("Alert").

i"sayhi","Dis bonjour"), // Пункт меню «Скажи- привет» ("Say Hi").

("screen", "Ecran"), // Пункт меню «Экран» ("Screen").



{"item", "Item"), //.Пункт меню «Предмет» ("Item").

("help", "Aider"), // Пункт меню «Помощь» ("Help").

("app_icon", applcon) // Значок приложения.

};

/**

Конструктор No-arg.

*/

public I18NDemoResources_fr_FR()

{

super();


/**

Получает содержимое пакета ресурсов.

@возвращает массив пар ключ-значение.

public Object [][] getContents()

{

return contends;

}

// Обратите внимание, что статический инициализатор создает

// экземпляры класса Image с другими изображениями, нежели он

// использует в региональной настройке en_US. static

{

try

{

applcon = Image.createlmage("i!8n-fr_FR.png");


}

catch (lOException ioe)

{

System.out.printIn(ioe.getMessage());


io.e.printStackTracel) ;

}

}

}

В листинге 9.11 показана программа I18NDemo3, которая использует данный набор классов пакетов ресурсов. Метод startAppO данного MID-лета создает экземпляр соответствующего класса пакета ресурсов. Он создает имя класса, связывая базовое имя семейства файлов локализованных ресурсов, I18NDemoResources, с конечной региональной настройкой. С помощью всего лишь нескольких операторов приложение получает доступ ко всем локализованным ресурсам.


Содержание раздела