Qt实现中英文切换中QMessageBox中的中文信息怎么处理

有粉丝看了《Qt实现中英文切换》文章后,留言说"中英文切换中QMessageBox中的中文信息怎么处理",这篇文章就告诉你处理方法。

1,QMessageBox OK或Cancel提示语句

复制代码
QMessageBox::information(this, QString::fromLocal8Bit("测试"), QString::fromLocal8Bit("这是一个测试"), QMessageBox::Ok | QMessageBox::Cancel);

修改后的

复制代码
 QMessageBox* msgBox = new QMessageBox(QMessageBox::Information, QString::fromLocal8Bit("测试"), QString::fromLocal8Bit("这是一个测试"), QMessageBox::Ok );

 msgBox->button(QMessageBox::Ok)->setText(QString::fromLocal8Bit("确定"));
 msgBox->button(QMessageBox::Cancel)->setText(QString::fromLocal8Bit("取消"));
 msgBox->exec();
 delete msgBox;

2,QMessageBox OK提示语句

复制代码
QMessageBox::information(this, QString::fromLocal8Bit("测试"), QString::fromLocal8Bit("这是一个测试,懂不?"), QMessageBox::Ok);

修改后的,我们可以根据自己的喜好,设置更特别的文字。

复制代码
   QMessageBox* msgBox = new QMessageBox(QMessageBox::Information, QString::fromLocal8Bit("测试"), QString::fromLocal8Bit("这是一个测试,懂不?"), QMessageBox::Ok );
   // 将原本显示"Yes"的按钮改为显示"懂了"
   msgBox->button(QMessageBox::Ok)->setText(QString::fromLocal8Bit("懂了"));
   msgBox->exec();
   delete msgBox;

3,含选择问句 QMessageBox Yes或No提示语句

复制代码
 QMessageBox::question(this, QString::fromLocal8Bit("测试"), QString::fromLocal8Bit("这是一个测试?"), QMessageBox::Yes | QMessageBox::No);

修改后的

复制代码
  QMessageBox* msgBox = new QMessageBox(QMessageBox::question, QString::fromLocal8Bit("测试"), QString::fromLocal8Bit("这是一个测试?"), QMessageBox::Ok );
   将原本显示"Yes"的按钮改为显示"是"
  msgBox->button(QMessageBox::Yes)->setText(QString::fromLocal8Bit("是"));
  msgBox->button(QMessageBox::No)->setText(QString::fromLocal8Bit("否"));
  msgBox->exec();
  delete msgBox;

总结:所有的QMessageBox中的控件,只有QLabel与QPushButton,所以只要获取相应的控件,就可以随意改变文字与字体颜色,大小等。获取button 的关键语句msgBox->button(QMessageBox::Yes)。

相关推荐
用户805533698034 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
xcyxiner4 天前
DicomViewer (vcpkg Windows和ubuntu编译)7
qt
Quz9 天前
QML Hello World 入门示例
qt
xcyxiner12 天前
DicomViewer (dcmtk读取dcm文件)5
qt
xcyxiner13 天前
DicomViewer (后台线程处理文件)4
qt
xcyxiner13 天前
DicomViewer (添加模型类)3
qt
xcyxiner14 天前
DicomViewer (目录调整) 2
qt
xcyxiner14 天前
dcmtk vtk vtk-dicom(gdcm) 编译(debug) v2
qt
LDR00616 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术16 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript