找回密码
 立即注册
收起左侧

构造函数中的tr()没有实现国际化

1
回复
4646
查看
[复制链接]
累计签到:609 天
连续签到:1 天
来源: 2014-1-18 16:33:26 显示全部楼层 |阅读模式

马上注册,查看详细内容!注册请先查看:注册须知

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
  1. 程序见下,在实现国际化时,发现构造函数中的4个tr()一直检测不到,而槽函数fileOpen()函数中的tr()可以检测到并能实现正常的翻译,后来加上注释掉的那两条语句之后,发现构造函数中的4个tr()可以检测到了,请大神指点原理。谢谢!
复制代码
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
//QTextCodec*codec = QTextCodec::codecForLocale();
//QTextCodec::setCodecForLocale(codec);

QMenuBar *menuBar = new QMenuBar(this);
setWindowTitle(tr("MainWindow"));
QMenu *fileMenu = new QMenu(tr("&File"), menuBar);
QAction *newFile = new QAction(tr("&New..."), fileMenu);
QAction *openFile = new QAction(tr("&Open..."), fileMenu);
menuBar->addMenu(fileMenu);
fileMenu->addAction(newFile);
fileMenu->addAction(openFile);
setMenuBar(menuBar);

connect(openFile, SIGNAL(triggered()), this, SLOT(fileOpen()));
}

回复

使用道具 举报

累计签到:609 天
连续签到:1 天
2014-1-18 16:40:27 显示全部楼层
补充一个问题,刚才又把上面两行注释掉,再增加一个tr()函数,发现可以检测到新增的tr()了,难道和这两句没有关系?个人感觉是没有什么关系,但不知为什么开始的时候检测不到呢?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了