Qt 中英文翻译问题

yuzoubawang888 2012-12-27 09:33:49
我把工程翻译成英文。
在main函数里面:
QTranslator translator(0);
translator.load(languageFile,".");//要跟刚才得到的qm的文件名对应
app.installTranslator( &translator );
但是我把可执行文件和.qm文件拷到板子里运行。有时候会出现英文,有时候又不会。我很纳闷啊。。
...全文
392 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
__阿飞__ 2012-12-27
  • 打赏
  • 举报
回复
编译好的qm文件一定要放到可执行程序的目录,放错位置就不会读取到,而且在Qt里面debug模式跟release模式的路径是不一样的,你可以把qm文件分别放到debug和release目录里面.
引用 楼主 yuzoubawang888 的回复:
我把工程翻译成英文。 在main函数里面: QTranslator translator(0); translator.load(languageFile,".");//要跟刚才得到的qm的文件名对应 app.installTranslator( &translator ); 但是我把可执行文件和.qm文件拷到板子里运行。有时候会……
moxiaofeng77 2012-12-27
  • 打赏
  • 举报
回复
确认一下,看实际存放.qm文件的路径是不是和程序里要加载路径是否一致。 另外,一般在程序里是英文,在qm中翻译成中文。 http://download.csdn.net/detail/moxiaofeng77/4883283这是我以前上传的教程
jdwx 2012-12-27
  • 打赏
  • 举报
回复
建议用qApp->applicationDirPath ()取得路径,就不容易出错。
__阿飞__ 2012-12-27
  • 打赏
  • 举报
回复
嗯嗯,我说的绝对了,放到其他目录也可以的,关键是路径一定要设置正确了,否则读不到那就没办法translate了.
引用 3 楼 jdwx1 的回复:
引用 2 楼 yuan8222 的回复:编译好的qm文件一定要放到可执行程序的目录,放错位置就不会读取到,而且在Qt里面debug模式跟release模式的路径是不一样的,你可以把qm文件分别放到debug和release目录里面. 引用 楼主 yuzoubawang888 的回复:我把工程翻译成英文。 在main函数里面: QTranslator tr……
yuzoubawang888 2012-12-27
  • 打赏
  • 举报
回复
引用 2 楼 yuan8222 的回复:
编译好的qm文件一定要放到可执行程序的目录,放错位置就不会读取到,而且在Qt里面debug模式跟release模式的路径是不一样的,你可以把qm文件分别放到debug和release目录里面. 引用 楼主 yuzoubawang888 的回复:我把工程翻译成英文。 在main函数里面: QTranslator translator(0); tr……
问题解决了。。就是我在root@freescale /healthChecker$ ./ClinicsBed -qws 执行就可以了。如果我退出再根目录下root@freescale /$ /healthChecker/ClinicsBed -qws 这样执行就不行。why?
yuzoubawang888 2012-12-27
  • 打赏
  • 举报
回复
引用 4 楼 allencui0313 的回复:
哦要确认路径。 如果你是在creator里面启动。当前路径就是 xxx.pro所在的路径 如果你直接启动exe. 那么当前路劲就是 你xxx.exe的路径了哈。 然后把qm放到你那个路径下就对了 如果你的qm叫 xxxx.qm 最后。translator.load("xxxx")后面不用跟.qm....
问题解决了。。就是我在root@freescale /healthChecker$ ./ClinicsBed -qws 执行就可以了。如果我退出再根目录下root@freescale /$ /healthChecker/ClinicsBed -qws 这样执行就不行。why?
yuzoubawang888 2012-12-27
  • 打赏
  • 举报
回复
引用 4 楼 allencui0313 的回复:
哦要确认路径。 如果你是在creator里面启动。当前路径就是 xxx.pro所在的路径 如果你直接启动exe. 那么当前路劲就是 你xxx.exe的路径了哈。 然后把qm放到你那个路径下就对了 如果你的qm叫 xxxx.qm 最后。translator.load("xxxx")后面不用跟.qm....
问题解决了。。就是我在root@freescale /healthChecker$ ./ClinicsBed -qws 执行就可以了。如果我退出再根目录下root@freescale /$ /healthChecker/ClinicsBed -qws 这样执行就不行。why?
  • 打赏
  • 举报
回复
哦要确认路径。 如果你是在creator里面启动。当前路径就是 xxx.pro所在的路径 如果你直接启动exe. 那么当前路劲就是 你xxx.exe的路径了哈。 然后把qm放到你那个路径下就对了 如果你的qm叫 xxxx.qm 最后。translator.load("xxxx")后面不用跟.qm....
jdwx 2012-12-27
  • 打赏
  • 举报
回复
引用 2 楼 yuan8222 的回复:
编译好的qm文件一定要放到可执行程序的目录,放错位置就不会读取到,而且在Qt里面debug模式跟release模式的路径是不一样的,你可以把qm文件分别放到debug和release目录里面. 引用 楼主 yuzoubawang888 的回复:我把工程翻译成英文。 在main函数里面: QTranslator translator(0); tr……
放到其他目录也可以。

16,212

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧