Користувальницькькі налаштування

Налаштування сайту


qt

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Наступна ревізія
Попередня ревізія
Остання ревізія Both sides next revision
qt [2016/02/10 11:20]
wombat Интернационализация
qt [2016/03/08 22:06]
wombat Установка в Windows
Рядок 1: Рядок 1:
 ====== Qt ====== ====== Qt ======
  
-===== Локализация =====+====== Локализация ​====== 
 + 
 +===== Поддержка переводов в программе ​=====
  
 Согласно [[http://​doc.qt.io/​qt-5/​internationalization.html | документации Qt]], поддержка локализованного (а точнее - "​интернационализованного"​ -- т.н. "​i18n"​) интерфейса в программе включается следующим образом:​ Согласно [[http://​doc.qt.io/​qt-5/​internationalization.html | документации Qt]], поддержка локализованного (а точнее - "​интернационализованного"​ -- т.н. "​i18n"​) интерфейса в программе включается следующим образом:​
Рядок 23: Рядок 25:
 } }
 </​code>​ </​code>​
 +
 +Такой код загружает перевод,​ соответствующй системным настройкам языка. Вместо этого можно в явном виде загрузить нужный перевод:​
 +
 +<code c++>
 +    myappTranslator.load("​myapp_uk_UA"​);​
 +</​code>​
 +
 +При этом необходимо,​ чтобы существовал соответствующий файл перевода "''​myapp_uk.qm''",​ которые генерируются из исходных файлов перевода "''​myapp_uk.ts''"​.
 +
 +===== Обновление и компиляция переводов =====
 +
 +==== Средствами Qt ====
 +
 +Для того, чтобы файлы переводов можно было обновлять и компилировать,​ их необходимо перечислить в проектном файле Qt (например,​ ''​myapp.pro''​)((http://​doc.qt.io/​qt-5/​linguist-programmers.html)):​
 +<​code>​
 +TRANSLATIONS = myapp_uk.ts \
 +               ​myapp_ru.ts \
 +               ​myapp_en.ts
 +</​code>​
 +
 +Тогда можно создать или обновить файлы переводов на основании подлежащих переводу строк, содержащихся в исходных файлах программы,​ перечисленных в разделах ''​SOURCES''​ и ''​HEADERS''​ этого же проектного файла:
 +
 +  lupdate myapp.pro
 +
 +Или напрямую передать команде ''​lupdate''​ список исходных файлов и имя выходного ''​ts''​-файла:​
 +
 +  lupdate *.cpp *.h *.ui -ts myapp_uk.ts
 +
 +После чего -- скомпилировать из ''​ts''​-файлов перевода ''​qm''​-файлы,​ подходящие для загрузки нашей программой во время запуска:​
 +
 +  lrelease myapp.pro
 +
 +или
 +
 +  lrelease myapp_*.ts
 +
 +
 +==== Средствами CMake ====
 +
 +Чтобы файлы переводов автоматически обновлялись и компилировались при каждой сборке программы,​ можно в файл CMakeLists.txt внести такие правки:​
 +
 +<file cmake CMakeLists.txt>​
 +find_package(Qt5LinguistTools)
 +SET(Translation_files
 +  spectrophot_uk.ts
 +  spectrophot_ru.ts
 +)
 +QT5_CREATE_TRANSLATION(TranslationSrcs ${CMAKE_CURRENT_SOURCE_DIR} ${Translation_files})
 +...
 +ADD_EXECUTABLE(myapp ${Srcs} ${UISrcs} ${TranslationSrcs})
 +</​file>​
 +
 +====== Установка в Windows ======
 +
 +Чтобы установить Qt в ОС Windows, можно скачать с официального сайта [[http://​download.qt.io/​archive/​qt/​5.5/​5.5.1/​qt-opensource-windows-x86-mingw492-5.5.1.exe | установщик]] (1ГБ), включающий в себя также и MinGW. Установка очень проста -- достаточно запустить скачанный файл установщика. Однако,​ в установленном виде Qt может занимать много места на диске - порядка нескольких гигабайт.
 +
  
  
qt.txt · В останнє змінено: 2016/03/08 22:10 by wombat