Qt localization
Qt localization
本文关键字:localization Qt 更新时间:2023-10-16
我对Qt程序的本地化有一些问题。在我的电脑上一切都很好,但是当我把我的程序发送给其他用户时,他们看不到某些语言的符号。在这个例子中,我测试了泰语。
屏幕截图的程序输出:我的cpu操作系统:Windows 7 Ultimate x64 SP1http://myprintscreen.com/s/1id
用户cpu操作系统相同:Windows 7 Ultimate x64 SP1http://myprintscreen.com/s/1ie
用户可以在Microsoft Word和notepad++中打印泰语,但不能在Qt的输入字段中打印。
我们发现了一些有趣的bug (http://myprintscreen.com/s/1if):如果你在QTextEdit中从Microsoft Word复制泰语文本,它会正常显示。QLineEdit和QPlainTextEdit不能正常显示
在Windows XP x86 SP3 (http://myprintscreen.com/s/1ii)上无法显示日文,但在泰文下一切正常:)
我尝试使用:
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
QString::fromUtf8
tr
trUtf8
QTextCodec::codecForName("UTF-8")->toUnicode
Qt项目:http://www74.zippyshare.com/v/39453145/file.html
请帮助。我不知道该怎么做才能使它工作。
解决方案很简单。用户计算机上的字体问题。在我的情况下,Qt默认使用MS Shell dlg2字体。但在用户的电脑上,他被"损坏"了。我添加了以下代码:
QApplication::setFont(QFontDialog::getFont(0, QApplication::font()));
并继续测试。有些字体会显示,有些则不会。在不同的电脑上有不同的行为。
这就是为什么我决定为我的字体添加必要的发行版,并为QApplication安装它。
相关文章:
- Qt VTK交互风格的信号到小部件
- QT在错误的班级中寻找空位
- 如何在选项卡视图Qt中设置一个新项目,并保存以前的项目
- 如何在Qt窗口小部件中使用QStringView(或QStringRef)
- 如何在Qt C++中更改光标
- 如何在MS Visual Studio 2019中运行QT UI
- QT通过C++添加映射QML项目
- libssh 的函数在构建 libssh 时无法在 Qt 和 cmake 错误中找到
- 如何将点击的信号和插槽添加到qt中的自定义按钮中
- Qt C++静态thread_local QNetworkAccessManager是线程应用程序的好选择吗
- 使用Qt C++计算类似Git的SHA1哈希
- Qt focusObjectChanged example?
- 如何在cpp文件之间切换窗口?在Qt中
- Qt和C++:将QLineEdit添加到QTabWidget中
- 从数据库实时显示QT c++中的数据
- Qt Quick-如何仅从c++代码与qml属性交互
- 无法使用Qt Creator在Windows中构建yaml-cpp
- 如何在Qt中取消捕获字符串
- Qt localization
- Qt Localization QMainWindow