【QT】tr()的作用

函数 tr() 全名是 QObject::tr() ,被它处理的 字符串可以 使用工具提取出来翻译成其他语言, 也就是做国际化使用。

只要记住,Qt 的最佳实践:如果你想让你的程序国际化的话,那么,所有用户可见的字符串都要使用 QObject::tr() !

但是,为什么我们没有写 QObject::tr() ,而仅仅是 tr() 呢?原来,tr()函数是定义在 Object 里面的,所有使用了 Q_OBJECT 宏的类都自动具有 tr() 函数。

在书中看到的一句话,如果想要你做的程序国际化,就把所有用户可见的字符串写到tr()中去,可直接用工具翻译成多语言的版本.

为什么有些字符串前面会有&号呢?比如像下面这样:

 openAction = new QAction(tr("&Open"), this);

为什么会出现呢?因为这是一个定义 action 的初始化字符串,“&”主要用于快捷键,就好比按下 alt 的时候我们使用的桌面程序也会有快捷键一样。

而且这个快捷键与字符串的首字母有关,首字母是什么 快捷键就是 alt+什么。

posted @   RioTian  阅读(365)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 分享4款.NET开源、免费、实用的商城系统
· 解决跨域问题的这6种方案,真香!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库
· 5. Nginx 负载均衡配置案例(附有详细截图说明++)
历史上的今天:
2021-08-16 Codeforces Round #650 (Div. 3) F1经典离散化DP
2021-08-16 【算法学习笔记】容斥原理
2021-08-16 Codeforces Round #738 (Div. 2) (A~E)
2020-08-16 复旦大学2020考研机试题-编程能力摸底试题(A-E)
点击右上角即可分享
微信分享提示