Название: [РЕШЕНО] Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: vizir1989 от Июня 04, 2012, 08:33 У меня есть диалоговые окна со стандартными кнопками QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд.
Мне нужно их перевести, для этого я подгрузил QT-шный файл перевода Код: QTranslator qtTranslator; На моем компе перевод нормально подхватился, а вот на компе без QT перевода нет. Как сделать так, чтобы на другом компе так же был перевод кнопок? Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: maint от Июня 04, 2012, 09:04 Код: QTranslator *qtTranslator = new QTranslator(qApp); Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: vizir1989 от Июня 04, 2012, 10:12 Добавил qt_ru.qm в resources/translations
Изменил загрузку на Код: QTranslator qtTranslator; Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: interv от Июня 04, 2012, 10:19 Код: QTranslator qtTranslator; Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: sudo от Июня 04, 2012, 10:29 Стандартные кнопки подхватывают системную локаль. Может поэтому не подхватывается?
Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: vizir1989 от Июня 04, 2012, 10:31 Стандартные кнопки подхватывают системную локаль. Может поэтому не подхватывается? Локаль смотрели, и там и там стоит русская локаль.Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: maint от Июня 04, 2012, 10:32 Добавил qt_ru.qm в resources/translations само собой. Дальше товарищ уже показал чего надо. Внимательнее надо. Или объяснять, что комп делает только то что написал программер, а не подумал ;)Изменил загрузку на Код: QTranslator qtTranslator; Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: vizir1989 от Июня 04, 2012, 10:39 Код: QTranslator qtTranslator; Не помогло :( Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: maint от Июня 04, 2012, 10:47 Код: QTranslator qtTranslator; Не помогло :( Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: vizir1989 от Июня 04, 2012, 10:54 Код main.cpp
Код: int main(int argc, char* argv[]) Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: Serr500 от Июня 04, 2012, 11:04 Положите qt_ru.qm в каталог с бинарником программы. В main.cpp напишите следующее:
Код: QTranslator Translator; Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: maint от Июня 04, 2012, 11:12 Код main.cpp да нет, файл имя_программы.qrс. У меня в одной и программ он где то так выглядитКод: int main(int argc, char* argv[]) Код: <RCC> Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: kambala от Июня 04, 2012, 11:58 если папку resources будешь распространять со своим приложением, то грузи перевод как qtTranslator.load("resources/translations/qt_ru.qm"); если нет, то этот файл надо добавить в .qrc (в данном примере - не на первый уровень, а под resources/translations/) и грузить как qtTranslator.load(":/resources/translations/qt_ru.qm");
Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: vizir1989 от Июня 09, 2012, 09:37 Удалось подхватить перевод, если запихнуть в папку translation закинуть qt_ru.qm и в qrc указать этот файл.
Код: <RCC> Код: <RCC> чтобы не пихать qt_ru.qm в ресурсы? Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: kambala от Июня 09, 2012, 12:12 так в qrc не сделаешь - разве что в коде читать значение переменной окружения QTDIR и строить путь. но такое прокатит, только если на всех целевых машинах 100% установлен Qt и эта переменная прописана.
Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: Serr500 от Июня 09, 2012, 13:22 чтобы не пихать qt_ru.qm в ресурсы? Чем моё решение не устраивает?http://www.prog.org.ru/index.php?topic=22106.msg154192#msg154192 (http://www.prog.org.ru/index.php?topic=22106.msg154192#msg154192) Название: Re: Стандартные кнопки QDialogButtonBox::Ok, QDialogButtonBox::Cancel и тд. Отправлено: vizir1989 от Июня 13, 2012, 10:50 чтобы не пихать qt_ru.qm в ресурсы? Чем моё решение не устраивает?http://www.prog.org.ru/index.php?topic=22106.msg154192#msg154192 (http://www.prog.org.ru/index.php?topic=22106.msg154192#msg154192) Решение норм отработало, на нем решил остановиться. |