QT从常量中有换行符问题,浅谈项目中如何进行语言设计

 

使用QT进行项目开发时,经常会遇到“常量中有换行符”问题,产生的具体原因请参考这位“知友”https://zhuanlan.zhihu.com/p/146543940

 

接下来我们来谈谈,架构中应该如何设计!

常见的设计模式是在需要给控件赋值的地方直接使用qt自带的多语言设计器 tr 去处理,

例如:

 

QTable *tab =new QTable();

tab->setText(tr("tip"));

这样写也可以解决上述问题,如果要是一个小项目,这样写还行,

要是做得项目规模比较大,我一般会用下面的架构:

新建一个公用类库,把我们一些共用的函数都放在这个子项目中,

这里,我们的语言设计就可以放在这个模块中完成。

 

注意这时tr的内容我们可以自定义,不一定非要写准确的英文,只要我们自己认识就可以,只是作为一个标记使用,

这样放在同一个公用类中,就不用为不同模块中相同的字符描述做多次声明和翻译了。

使用方式如下:

 

 如有不同的见解,欢迎讨论,学而不思则罔!

 

posted @ 2021-08-20 16:10  nmhome  阅读(301)  评论(0编辑  收藏  举报