Qt linguist: переклад всередині не спадкоємців і заключні штрихи

Переклад всередині не спадкоємців QObject
Qt Linguist: переклад всередині не спадкоємців і Прикінцеві штрихи[/ Center]
На окрему увагу заслуговує переклад всередині класів, які не є спадкоємцями QObject. Адже функція tr () - член саме цього класу. Є два рішення задачі: перша - замість tr () користуватися статичною функцією:
QString QCoreApplication :: translate (const char * context, const char * sourceText,;
const char * disambiguation = 0, Encoding encoding = CodecForTr)

Вона, як і tr (), розпізнається утилітою lupdate при скануванні вихідного коду. Параметр context в ній - ім`я класу, а sourceText - рядок, переклад якої ви бажаєте отримати.

Другий варіант вирішення цього завдання - вдатися до знаменитої системі макросів Qt, яка творить чудеса. Якщо в опис класу додати макрос Q_DECLARE_TR_FUNCTIONS, то функцію tr () можна буде використовувати у функціях цього класу. приклад:
class MyClass
{



Q_DECLARE_TR_FUNCTIONS (MyClass)
public:
MyClass ();



} -

Після такого оголошення MyClass ми можемо використовувати у функціях цього класу функцію tr ().

заключні штрихи

Існують ще тонкощі використання механізму перекладу при роботі Qt-додатки в системі Mac OS - вони частково описані в документації Qt. «Частково» тому, що вас відправляють за подробицями на недоступні веб-сторінки. Я не знавець розробки ПЗ під Mac OS, тому порадити нічого не можу. І наостанок - про утиліту lupdate. Коли ви видаляєте з исходника якісь рядки, «помічені» функцією tr (або translate), при обробці исходника програмою lupdate в TS-файлах залишаються записи, які стосуються віддаленим рядках. Щоб їх не було, lupdate слід запускати з параметром -no-obsolete. Потім, звичайно, слід скомпілювати TS-файли за допомогою lrelease або в Qt Linguist.

Підсумки по Linguist

Qt Linguist: переклад всередині не спадкоємців і Прикінцеві штрихи

Qt Linguist дуже зручний для перекладу - краще, ніж звичайний текстовий редактор. В Qt Linguist можна швидко переміщатися до не мають перекладу рядках, робити різні позначки, додавати примітки, бачити статистику. Бувають іноді крайні випадки, коли файл перекладу пошкоджений і Qt Linguist не може його відкрити. Доводиться вдатися до текстового редактора, щоб виправити XML-розмітку вручну. Але особисто я стикався з цим лише одного разу за багато років роботи.



Графічні утиліти цікавить Вас набагато менше, ніж ігрові автомати? В такому випадку, Вам слід знати, що кращі ігрові гамінатори представлені тут. Це відмінні ігрові автомати з частими виграшами, які виразно точно припадуть Вам до смаку!

ІНШЕ

Онлайн перекладач dicter фото

Онлайн перекладач dicter

Відео: Онлайн перекладач Dicter - як перекласти текст в один клік Ні для кого не буде відкриттям твердження, що…

Неясності з phonon фото

Неясності з phonon

Від труднощів збірки перейдемо до неясним місцях у використанні Phonon. Phonon підтримує ті мультимедійні формати, які…

Бесіди про qt: qsettings і xml фото

Бесіди про qt: qsettings і xml

Клас QSettings служить Qt-програмістам вірою і правдою, коли потрібно зберегти або завантажити будь-які налаштування…

Як навчиться переводити? фото

Як навчиться переводити?

У наш час іноземні мові займають важливу роль в житті людей. Тому не тільки перекладачі, а й практично люди всіх…

» » Qt linguist: переклад всередині не спадкоємців і заключні штрихи