crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Локализация QCalendarWidget в QDateTimeEdit
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
proton Дата 14.12.2008, 21:04
 
Цитата(Litkevich Yuriy @ 14.12.2008, 18:37) *
proton, что за ОСь у тебя, и версия Qt?

Gentoo, 4.4.2

Цитата(molchanoviv @ 14.12.2008, 18:57) *
Все таки попробуй запустить с флагом LOCALE=ru_RU.UTF8

Наверно LC_ALL="ru_RU.UTF-8"?
Запускал, тот же эффект
molchanoviv Дата 14.12.2008, 18:57
 
Цитата(Litkevich Yuriy @ 14.12.2008, 17:48) *
Цитата(molchanoviv @ 14.12.2008, 20:26) *
Так и у меня в сусе на русском.
и всплывающий календарь?

Да.

Цитата(proton @ 14.12.2008, 18:13) *
Цитата(molchanoviv @ 14.12.2008, 17:26) *
Так и у меня в сусе на русском. Потому и говорю чтоб покопался с системными настройками. А в винловозе эта фигня находится в панели управления/язык и региональные настройки(или что-то в этом роде).

У меня на английском =(
Хотя локаль русская, да и в центре кдешном выбран Русский

Все таки попробуй запустить с флагом LOCALE=ru_RU.UTF8
Litkevich Yuriy Дата 14.12.2008, 18:37
  proton, что за ОСь у тебя, и версия Qt?

Настройки врятли помогут, ведь сам виджет (автономно) QCalendarWidget имеет локализацию.
proton Дата 14.12.2008, 18:13
 
Цитата(molchanoviv @ 14.12.2008, 17:26) *
Так и у меня в сусе на русском. Потому и говорю чтоб покопался с системными настройками. А в винловозе эта фигня находится в панели управления/язык и региональные настройки(или что-то в этом роде).

У меня на английском =(
Хотя локаль русская, да и в центре кдешном выбран Русский
Litkevich Yuriy Дата 14.12.2008, 17:48
 
Цитата(molchanoviv @ 14.12.2008, 20:26) *
Так и у меня в сусе на русском.
и всплывающий календарь?
molchanoviv Дата 14.12.2008, 17:26
  Так и у меня в сусе на русском. Потому и говорю чтоб покопался с системными настройками. А в винловозе эта фигня находится в панели управления/язык и региональные настройки(или что-то в этом роде).
Litkevich Yuriy Дата 14.12.2008, 17:16
 
Цитата(molchanoviv @ 14.12.2008, 19:38) *
Я так подозреваю что это правится либо в контрол-центре КДЕ либо системной командой locale
а в виндовозе?

proton, проведи еще один эксперимент, открой в дизайнере этот файл:
<ui version="4.0" >
 <class>Form</class>
 <widget class="QWidget" name="Form" >
  <property name="geometry" >
   <rect>
    <x>0</x>
    <y>0</y>
    <width>218</width>
    <height>192</height>
   </rect>
  </property>
  <property name="windowTitle" >
   <string>Form</string>
  </property>
  <layout class="QVBoxLayout" >
   <item>
    <widget class="QCalendarWidget" name="calendarWidget" />
   </item>
   <item>
    <widget class="QDateTimeEdit" name="dateTimeEdit" >
     <property name="calendarPopup" >
      <bool>true</bool>
     </property>
    </widget>
   </item>
  </layout>
 </widget>
 <resources/>
 <connections/>
</ui>

у меня, в виндовозе, при предпросмотре формы в Дизайнере всегда отображается на русском.
molchanoviv Дата 14.12.2008, 16:38
  Я так подозреваю что это правится либо в контрол-центре КДЕ либо системной командой locale
Litkevich Yuriy Дата 14.12.2008, 16:08
 
Цитата(proton @ 14.12.2008, 18:35) *
qttr->load(QString("qt_") + locale); // загрузка файла qt_*.qm
такая форма записи работает только в виндовозе, т.к. не указан путь.

Интересно, скомпилил с использованием Qt 4.4.3 qm-файл переименовал до не узноваемости (и тот, что в каталоге с бинарем и тот, что в каталоге translations) все равно все переведено :huh:
Значит перевод еще откуда-то подхыватывается, может из системы (локализация дней недели и месяцев)

закоментировал в своем пример кусок кода с загрузкой переводчика, все равно виджеты локализованые получаются!
proton Дата 14.12.2008, 15:35
 
Цитата(Litkevich Yuriy @ 14.12.2008, 15:25) *
proton, где у тебя лежит файл *.qm ? (полный путь напиши) и покажи как ты его подгружаешь?

#include <QApplication>
#include <QCalendarWidget>
#include <QDateTimeEdit>
#include <QVBoxLayout>
#include <QTranslator>
#include <QLocale>
#include <QString>

int main(int argc, char **argv)
{
    QApplication     app(argc, argv);
    QTranslator    *qttr;        // переводчик программы
    QCalendarWidget *clnd;
    QDateTimeEdit *dte;
    QVBoxLayout  *lay;
    QWidget wgt;

     // Устанавливаем превод библиотек Qt
    QString locale = QLocale::system().name();    // запрос языка (например: "ru")
    qttr = new QTranslator;
    qttr->load(QString("qt_") + locale); // загрузка файла qt_*.qm
    app.installTranslator(qttr);         // устанока переводчика  

    clnd = new QCalendarWidget();
    dte = new QDateTimeEdit();
    lay = new QVBoxLayout();
    dte->setCalendarPopup(true);
    lay->addWidget(clnd);
    lay->addWidget(dte);
    wgt.setLayout(lay);
    wgt.setLocale(QLocale(QLocale::Russian, QLocale::RussianFederation));\
    wgt.show();
    return app.exec();
}


путь к .qm - /usr/share/qt4/translations/qt_ru.qm
раньше подгружал через qttr->load(QString("/usr/share/qt4/translations/qt_ru")); - эффект тот тот же
Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 5.7.2025, 20:10