Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   класс Locale (http://www.flasher.ru/forum/showthread.php?t=107447)

Ar4ibald 01.02.2008 18:17

класс Locale
 
Всем привет. Я с помощью класа import mx.lang.Locale управляю языком на флешке. Но вот какая лажа:когда я применяю смену языка - он меняеться только на текущем фрейме.
Вот код:

Код:

import mx.lang.Locale;
Locale.setLoadCallback(localeListener);
Locale.loadLanguageXML("ru");
       

function localeListener(success:Boolean):Void {
    if (success) {
        _root.page.scrolling_content.pages.for_text.company_txt.text=Locale.loadString("IDS_COMPANY");
_root.page.scrolling_content2.pages.for_text.sevices.text=Locale.loadString("IDS_SEVICES");
_root.page.but1.but1.text=Locale.loadString("IDS_BUT1");
_root.page.but2.but2.text=Locale.loadString("IDS_BUT2");
_root.page.but3.but3.text=Locale.loadString("IDS_BUT3");

_root.page.company2.text=Locale.loadString("IDS_COMPANY2");
_root.page.yslygi2.text=Locale.loadString("IDS_YSLYGI2");
_root.page.partners2.text=Locale.loadString("IDS_PARTNERS2");
_root.page.clients2.text=Locale.loadString("IDS_CLIENTS2");
_root.page.contacts2.text=Locale.loadString("IDS_CONTACTS2");
_root.page.scrolling_contacts.pages.for_text.contacts.text=Locale.loadString("IDS_CONTACTS");

    } else {
        greeting_txt.text = "unable to load language XML file.";
    }
}

приходиться на каждом фрейме использовать кнопки перевода, а не хотелось бы. Код кнопок перевода:
Код:


_root.but1.onPress=function(){
        Locale.loadLanguageXML("ru");
       
        }
_root.but2.onPress=function(){
       
        Locale.loadLanguageXML("en");

        }

Как применить смену языка для всех динамических текстовых полей мувика, а не текущего фрейма ?
Заранее благодарен

Molecula 01.02.2008 18:29

1) _root - в классах лучше не использовать.
2) А сколько у Вас фреймов?

Цитата:

Но вот какая лажа:когда я применяю смену языка - он меняеться только на текущем фрейме.
Как применить смену языка для всех динамических текстовых полей мувика, а не текущего фрейма?
Использовать один фрейм.
Или при переходе на другой - выполнять функции по смене языка для дин.полей, которые в текущем фрейме, запоминая какой язык был выбран.

Ar4ibald 01.02.2008 18:45

Molecula, тоже такая мысл была, но почему-то не работает. Просто мувик з большим количеством мувиков и фреймов, вложенных друг в друга.
Пробовал в другом документе, то работает, но там все на основном таймлайне. Я просто думал, что есть функция, которая переводит во всем документе выбранные поля сразу и навсегда, до следующей перемены языка.

Molecula 01.02.2008 18:53

Код:

Просто мувик з большим количеством мувиков и фреймов, вложенных друг в друга.
Может, это и создает проблемы.

С этим классом не работал, использовал всегда System.capabilities.language

Может стоит так попробовать?

Ar4ibald 01.02.2008 18:55

Molecula, а можно поподробнее.
Какой механизм и как менять языки. Нужный текст где то должен содержаться?

Molecula 01.02.2008 19:10

Ну я обычно считывал текст из внешнего ХМЕЛь файла, но перед этим считывал язык его системы (Винды или ещё чего-то).
http://livedocs.adobe.com/flash/9.0/main/00001513.html - это про System.capabilities.language

Но чаще всего дефолный язык задается!, т.е. сайт по умолчанию открывается на датском языке, а щелкая на флажки стран - грузим уже тексты из других папок.

Вот чуваки что-то пишут про него - http://board.flashkit.com/board/arch.../t-661296.html


Часовой пояс GMT +4, время: 02:04.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.