Flutter开发App的未来及其在各行业的应用潜力分析
1706
2022-12-01
将QTextEdit右键菜单设置为中文
在Qt的安装目录C:\Qt\Qt5.7.0VS2015.7\msvc2015\translations中有名为qt_zh_CN.qm翻译文件,QLineEdit等通过加载该翻译文件就能实现右键中文菜单,如下所示:
QApplication a(argc, argv);//加载Qt中的资源文件,使Qt显示中文(包括QMessageBox、QLineEdit右键菜单等)QTranslator translator;translator.load(":/translations/qt_zh_CN.qm");a.installTranslator(&translator);
但是这种方法对QTextEdit等无效,CSDN论坛中给出了一种可行的方法,感谢lulinqing的分享,如下:
问题的原因在于:
QTextEdit中使用的对象QWidgetTextControl中的复制、粘贴等右键菜单选项在qt_zh_CN.qm中没有被翻译。 解决方法:
1.找到C:\Qt\Qt5.7.0VS2015\5.7\Src\qtbase\src\widgets目录,用Qt Creator打开里面的widgets.pro文件,添加一行:TRANSLATIONS += widgets.ts; 2.然后在Qt Creator的系统菜单中,选择:工具->外部->Qt语言家->更新翻译,就会在widgets.pro所在目录下生成一个widgets.ts文件;
3.用Qt Linguist打开widgets.ts,找到QWidgetTextControl,翻译相关选项,然后选择:文件->发布,就会在widgets.ts所在目录生产一个widgets.qm文件,然后用上面的方式应用到项目中即可。
其实右侧列表中的类都可以通过这种方法翻译,当然也包括QLineEdit和QMessageBox。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~