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)。

相关推荐
Quz1 天前
QML Hello World 入门示例
qt
xcyxiner4 天前
DicomViewer (dcmtk读取dcm文件)5
qt
xcyxiner5 天前
DicomViewer (后台线程处理文件)4
qt
xcyxiner5 天前
DicomViewer (添加模型类)3
qt
xcyxiner6 天前
DicomViewer (目录调整) 2
qt
xcyxiner6 天前
dcmtk vtk vtk-dicom(gdcm) 编译(debug) v2
qt
LDR0068 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术8 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园8 天前
C++20 Modules 模块详解
java·开发语言·spring
swordbob8 天前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio