Qt5 - 中文 - 常量中有换行符【图】

尘中远 2013-04-30 12:12:42
新手问题:
如图:
就想创建几个按钮,结果说


代码很简单啊:
//构建界面
void TxtWizDlg::InitUi_()
{
//按钮 - 上一步
m_pBtnBack = new QPushButton(this);
m_pBtnBack->setText(tr("上一步"));
//按钮 - 下一步
m_pBtnNext = new QPushButton(this);
m_pBtnNext->setText(tr("下一步"));
//按钮 - 取消
m_pBtnCancel = new QPushButton(this);
m_pBtnCancel->setText(tr("取 消"));
}



TxtWizDlg.cpp : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
TxtWizDlg.cpp(14) : error C2001: 常量中有换行符
TxtWizDlg.cpp(16) : error C2146: 语法错误: 缺少“)”(在标识符“m_pBtnNext”的前面)
TxtWizDlg.cpp(17) : error C2001: 常量中有换行符
TxtWizDlg.cpp(19) : error C2146: 语法错误: 缺少“)”(在标识符“m_pBtnCancel”的前面)
TxtWizDlg.cpp(19) : error C2143: 语法错误 : 缺少“)”(在“;”的前面)
TxtWizDlg.cpp(20) : error C2001: 常量中有换行符
TxtWizDlg.cpp(22) : error C2143: 语法错误 : 缺少“)”(在“}”的前面)
TxtWizDlg.cpp(22) : error C2143: 语法错误 : 缺少“)”(在“}”的前面)
TxtWizDlg.cpp(22) : error C2143: 语法错误 : 缺少“)”(在“}”的前面)
TxtWizDlg.cpp(22) : error C2143: 语法错误 : 缺少“;”(在“)”的前面)
TxtWizDlg.cpp(22) : error C2143: 语法错误 : 缺少“;”(在“)”的前面)


把汉字改成英文就好了,请问是怎么回事?
qt5
...全文
20171 22 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_27528693 2016-01-19
  • 打赏
  • 举报
回复
受不了,编译正常运行,显示出来还是乱码。。。郁闷
qq_27528693 2016-01-19
  • 打赏
  • 举报
回复
按照楼上的方式在修改了文本编码,可还是没解决。。。怎么破
  • 打赏
  • 举报
回复
我刚遇到了...这是文档编码的原因..将出错文档改成 unicode(utf-16) 编码即可...
iegad 2015-09-28
  • 打赏
  • 举报
回复
我使用的是不作修改Qt Creator配置的方式: ui->btnOk->setText(QString::fromWCharArray(L"新窗口")); 这样便可以正常显示. 平台WIN7 64 , VS2013, QtCreator 5.5
菠菜COM 2015-08-06
  • 打赏
  • 举报
回复
引用 17 楼 p2006pp8p26 的回复:
我用的是QT5.5 VS2013 文件--高级保存选项 将编码改成带BOM的UTF8 问题得到解决
我用vs2013保存后,没有报错了,但是运行后中文消失了,就是显示为空白,怎么办
p2006pp8p26 2015-07-26
  • 打赏
  • 举报
回复
我用的是QT5.5 VS2013 文件--高级保存选项 将编码改成带BOM的UTF8 问题得到解决
cutter_point 2015-01-01
  • 打赏
  • 举报
回复
上面方法基本试过,还是没解决= =
木头脑1895 2014-07-28
  • 打赏
  • 举报
回复
这个问题解决了吗?有什么方法可以改变编码方式呢?
利白 2014-02-28
  • 打赏
  • 举报
回复
请访问我的博客。这个问题是可以成功解决的。 http://blog.csdn.net/libaineu2004/article/details/19245205
aisq 2013-12-23
  • 打赏
  • 举报
回复
我用的是Qt5.2+VS2010+QtCreator3.0,也出现这个问题,老揪心了
xcyl 2013-05-02
  • 打赏
  • 举报
回复
引用 11 楼 czyt1988 的回复:
[quote=引用 10 楼 cai6811376 的回复:] [quote=引用 8 楼 czyt1988 的回复:] [quote=引用 6 楼 cai6811376 的回复:] 你用的而是vc的编译器吧,把代码格式改为带BOM的utf8就好了
带bom是选这个吗 [/quote]
引用 9 楼 czyt1988 的回复:
现在是: 我用记事本打开另存为utf8就可以用,但是一用qt creator编译,下次就又出现那个,又要用记事本打开另存utf8
在设置里面选择若有BOM则保留 源码可以用notepa++等软件转换为utf8带BOM的[/quote] 好的, 那这句警告: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 是否意味着需要保存为unicode?[/quote] 我记得我好像用的#pragma warning(disable: 4819)
donwmufromdying 2013-05-02
  • 打赏
  • 举报
回复
引用 6 楼 cai6811376 的回复:
你用的而是vc的编译器吧,把代码格式改为带BOM的utf8就好了
我用的是UTF-8 No BOM的。按照您的说法我试试看
xcyl 2013-05-02
  • 打赏
  • 举报
回复
你用的而是vc的编译器吧,把代码格式改为带BOM的utf8就好了
尘中远 2013-05-02
  • 打赏
  • 举报
回复
引用 10 楼 cai6811376 的回复:
[quote=引用 8 楼 czyt1988 的回复:] [quote=引用 6 楼 cai6811376 的回复:] 你用的而是vc的编译器吧,把代码格式改为带BOM的utf8就好了
带bom是选这个吗 [/quote]
引用 9 楼 czyt1988 的回复:
现在是: 我用记事本打开另存为utf8就可以用,但是一用qt creator编译,下次就又出现那个,又要用记事本打开另存utf8
在设置里面选择若有BOM则保留 源码可以用notepa++等软件转换为utf8带BOM的[/quote] 好的, 那这句警告: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 是否意味着需要保存为unicode?
xcyl 2013-05-02
  • 打赏
  • 举报
回复
引用 8 楼 czyt1988 的回复:
[quote=引用 6 楼 cai6811376 的回复:] 你用的而是vc的编译器吧,把代码格式改为带BOM的utf8就好了
带bom是选这个吗 [/quote]
引用 9 楼 czyt1988 的回复:
现在是: 我用记事本打开另存为utf8就可以用,但是一用qt creator编译,下次就又出现那个,又要用记事本打开另存utf8
在设置里面选择若有BOM则保留 源码可以用notepa++等软件转换为utf8带BOM的
尘中远 2013-05-02
  • 打赏
  • 举报
回复
现在是: 我用记事本打开另存为utf8就可以用,但是一用qt creator编译,下次就又出现那个,又要用记事本打开另存utf8
尘中远 2013-05-02
  • 打赏
  • 举报
回复
引用 6 楼 cai6811376 的回复:
你用的而是vc的编译器吧,把代码格式改为带BOM的utf8就好了

带bom是选这个吗
donwmufromdying 2013-05-01
  • 打赏
  • 举报
回复
没办法,同样的代码4.8.4一点问题都没有。Qt5.0现在没有GB2312了,因为有GBK。GBK是一个大的集合,包含了GB2312,gb18030等
donwmufromdying 2013-05-01
  • 打赏
  • 举报
回复
这个应该是Qt5.0的问题。可以基本肯定是Qt5的BUG.我也曾碰到这个问题,主要是中文的问题。你不信可以把button的setText()改成纯英文,就没这个报错了。另外,你如果要在Qt5里的菜单或者button上边用中文,有个笨办法,你在界面上画button写上中文,然后编译,然后打开ui_xxx.h头文件。然后你会发现里边的setText(); 使用了\345\234\607的中文编码。你复制过来就ok了
彩阳 2013-04-30
  • 打赏
  • 举报
回复
用记事本复制代码再保存为ansi格式,代码页936再编译看看。
加载更多回复(2)

16,831

社区成员

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

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