Narkoz9
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Оставлю, может кому поможет: "локализация своего проекта" Разместить где глобальные функции Код: -- выбор языка -- язык из настроек программы language = INIFile.GetValue("Config.cfg", "settings", "g_language"); -- язык системы, если нет в настройках программы if (language == "") then local language_id = System.GetDefaultLangID(); local language_win = INIFile.GetValue("languages.cfg", "languages", language_id.Primary); for z, result in ipairs(languages()) do if (String.Find(result, language_win, 1, false) == 1) then language = language_win; end end -- язык по-умолчанию, если нет переводов if (language == "") then language = "English"; end end -- Пути puth_localization = "Localization\\" .. language .. ".cfg"; -- массив существующих файлов локализации function languages() return File.Find("Localization", "*.cfg", false, false, nil, nil); end -- загрузка перевода слов function getTextLanguage(data) if (String.Find(data, "locale", 1, false) == 1) then result = INIFile.GetValue(puth_localization, "locale", data); elseif (String.Find(data, "text", 1, false) == 1) then result = INIFile.GetValue(puth_localization, "text", data); elseif (String.Find(data, "entry", 1, false) == 1) then result = INIFile.GetValue(puth_localization, "entry", data); elseif (String.Find(data, "help", 1, false) == 1) then result = INIFile.GetValue(puth_localization, "help", data); elseif (String.Find(data, "button", 1, false) == 1) then result = INIFile.GetValue(puth_localization, "button", data); elseif (String.Find(data, "success", 1, false) == 1) then result = INIFile.GetValue(puth_localization, "success", data); elseif (String.Find(data, "error", 1, false) == 1) then result = INIFile.GetValue(puth_localization, "error", data); end return result; end | Создать файл перевода id в название языка: Читать дальше.. [?] Дальше просто меняем слово на вызов функции getTextLanguage() Было: Label.SetText("text_apply", "text_apply"); Стало: Label.SetText("text_apply", getTextLanguage("text_apply")); | Всего записей: 2 | Зарегистр. 24-01-2017 | Отправлено: 23:40 22-07-2019 | Исправлено: Narkoz9, 23:59 22-07-2019 |
|