Russian Qt Forum
Сентябрь 24, 2024, 05:20 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt Список стран  (Прочитано 2551 раз)
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« : Октябрь 18, 2011, 15:36 »

Не могу найти оптимальный способ получения списка стран в qt. Желательно что бы страну можно было найти по 2-ух буквенному обозначению. При этом список должен быть локализован на текущий язык пользователя. Пробовал юзать QLocale след. образом

Код:
QLocale locale;
    QList<QLocale::Country> listCountry = locale.countriesForLanguage(QLocale::Russian);

    for (int i = 0; i < listCountry.count(); ++i) {
        qDebug() << (int)listCountry.at(i) << locale.countryToString(listCountry.at(i));
    }

Выводятся всего три страны, Россия, Украина, Молдова.

Код:
QLocale locale;
    QList<QLocale::Country> listCountry = locale.countriesForLanguage(QLocale::С);

    for (int i = 0; i < listCountry.count(); ++i) {
        qDebug() << (int)listCountry.at(i) << locale.countryToString(listCountry.at(i));
    }

Выводятся Default.

Есть еще два варианта, есть список стран в xml файле но он тоже на английском, то бишь в интерфейсе опять же не переведешь.
И последний который мне больше всего нравится. написать ф-цию типа

Код:
void loadCountry() {
    QHash<QString, QString> listCountry;
    listCountry.insert("ru",tr(Russia));
    listCountry.insert("uk",tr("United kingdom"));
..........
}

Вопрос, что скажете ? какой вариант лучше ? или может есть оптимальнее ?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.119 секунд. Запросов: 22.