QT在所有上下文中翻译搜索

qt translate search in all context

本文关键字:翻译 搜索 上下文 QT      更新时间:2023-10-16

我在TS文件中有两个上下文。

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.0" language="zh_CN">
<context>
<name>qSlicerMainWindow</name>
<message>
    <source>&File</source>
    <translation>文件</translation>
</message>
<message>
    <source>&Edit</source>
    <translation>编辑</translation>
</message>
<message>
    <source>Feedback</source>
    <translation>反馈</translation>
</message>
<message>
    <source>Import Scene</source>
    <translation>导入场景</translation>
</message>
<message>
    <source>Add Data</source>
    <translation>添加数据</translation>
</message>
</context>
<context>
     <name>Endoscopy</name>
     <message>
     <source>Endoscopy</source>
     <translation>内窥镜</translation>
     </message>
</context>
<context>
     <name>EndoscopyWidget</name>
     <message>
     <source>Path</source>
     <translation>路径</translation>
     </message>
     <message>
     <source>Camera</source>
     <translation>相机(Camera)</translation>
     </message>
     <message>
     <source>Input Fiducials</source>
     <translation>输入参考点(Input Fiducials)</translation>
     </message>
</context>
</TS>

qapplication :: translate((需要上下文作为参数和qobject :: tr((在全局上下文中搜索文本。

我只有源文本,它可以来自任何上下文。

有什么方法可以在TS文件中存在的所有上下文中搜索翻译?

,但是您可以轻松找到上下文!回想一下QApplication保留所有顶级小部件的列表,您可以轻松地枚举儿童小部件。XML文件中的上下文似乎是对象或类名称,因此使用它们确实很容易。