QT 想在lineedit显示汉字,汉字是存在一个QString的数组里面,但是显示为乱码
QStringname[20]={"张三","李四","王五"};ui->lineEdit->setText(name[0]);请问怎么解决?是不是少了些什么?详细的可加...
QString name[20]={"张三","李四","王五"};
ui->lineEdit->setText(name[0]);
请问怎么解决?是不是少了些什么?详细的可加分 展开
ui->lineEdit->setText(name[0]);
请问怎么解决?是不是少了些什么?详细的可加分 展开
1个回答
展开全部
QTextCodec *gbk = QTextCodec::codecForName("GBK");main函数得有这句话
QT5中文这么用(QStringLiteral("中文");
QT4中文这么用tr("中文");
QT5中文这么用(QStringLiteral("中文");
QT4中文这么用tr("中文");
更多追问追答
追问
能详细说说吗?在main函数里面加了QTextCodec *gbk = QTextCodec::codecForName("GBK");这句就可以了吗?还需不需要加其他语句?
我这个程序是想在数组里面放名字,然后通过改变数组的下标来更新lineEdit的内容,用的应该是QT4,能具体说说要怎么写吗?谢谢
追答
qt4和5都添加这句
setCodecForLocale,qt4还有两句,setCodecForStr,setcodecfor(记不得了,看帮组文档);
qt4中文用tr("中文"),中文外面加tr()包装;qt5中文用QStringLiteral()包装
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询