В приложении у меня есть много классов, которые, очевидно, не являются потомками QObject, и эти объекты, по-видимому, генерируют исключения, и эти исключения, по-видимому, необходимо преобразовать. Итак, я вложил каждую строку, выданную в виде исключения, в макрос QT_TR_NOOP. Это позволило мне создавать файлы перевода. Но когда я запускаю свою программу, строки по-прежнему не переводятся. Если я пытаюсь получить их через QApplication :: translate («MyClassName», «Text in english»), я могу получить строки в порядке, но QT_TR_NOOP («Text in english») возвращает только текст на английском языке. Есть ли какие-то дополнительные шаги, которые я должен предпринять, чтобы это работало правильно?
Кроме того, небольшой побочный вопрос: если я буду использовать QT_TR_NOOP в функции, которая не является членом какого-либо класса, что произойдет? Qt просто молча игнорирует эту ситуацию?