Qt中tr()的作用


函數 tr()全名是QObject::tr(),被它處理的 字符串可以 使用工具提 取出來翻譯 成其他語言, 也就是做國際化使用。

只要記住,Qt 的最佳實踐:如果你想讓你的程序國際化的話,那么,所有用戶可見的字符串都要使用 QObject::tr()!

但是,為什么我們沒有寫 QObject::tr(),而僅僅是 tr()呢?原來,tr()函數是定義在 Object里面的,所有使用了 Q_OBJECT 宏的類都自動具有 tr()函數。

 

在書中看到的一句話,如果想要你做的程序國際化,就把所有用戶可見的字符串寫到tr()中去,可直接用工具翻譯成多語言的版本.

轉載:https://blog.csdn.net/Mountain_Zhou_only/article/details/79929058

 

為什么有些字符串前面會有&號呢?比如像下面這樣:

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

為什么會出現呢?因為這是一個定義action的初始化字符串,“&”主要用於快捷鍵,就好比按下alt的時候我們使用的桌面程序也會有快捷鍵一樣。而且這個快捷鍵與字符串的首字母有關,首字母是什么 快捷鍵就是 alt+什么。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM