QMessageBox--消息对话框

来源:互联网 发布:如何分析财务报表数据 编辑:程序博客网 时间:2024/06/04 20:01

提示型:

[cpp] view plain copy
  1. QMessageBox::information(NULL, "Title""Content", QMessageBox::Yes, QMessageBox::Yes);  

错误型:

[cpp] view plain copy
  1. QMessageBox::critical(NULL, "critical""Content", QMessageBox::Yes, QMessageBox::Yes);  

警告型:

[cpp] view plain copy
  1. QMessageBox::warning(NULL, "warning""Content", QMessageBox::Yes, QMessageBox::Yes);  

提问型:

[cpp] view plain copy
  1. QMessageBox::question(NULL, "question""Content", QMessageBox::Yes, QMessageBox::Yes);  

关于对话框:

[cpp] view plain copy
  1. QMessageBox::about(NULL, "About""About this application");  

自定义型,例如可以加图片:

[cpp] view plain copy
  1. QMessageBox message(QMessageBox::NoIcon, "Title""Content with icon.");   
  2. message.setIconPixmap(QPixmap("icon.png"));   
  3. message.exec();  

这里我们使用的是exec()函数,而不是show(),因为这是一个模态对话框,需要有它自己的事件循环,否则的话,我们的对话框会一闪而过。

同其他的程序类似,我们在程序中定义的相对路径都是要相对于运行时的.exe文件的地址的。比如我们写"icon.png",意思是是在.exe的当前目录下寻找一个"icon.png"的文件。

返回值处理,static函数都是要返回一个StandardButton,我们就可以通过判断这个返回值来对用户的操作做出相应。

[cpp] view plain copy
  1. QMessageBox::StandardButton rb = QMessageBox::question(NULL, "Show Qt""Do you want to show Qt dialog?", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);   
  2. if(rb == QMessageBox::Yes)   
  3. {   
  4.         QMessageBox::aboutQt(NULL, "About Qt");   
  5. }  
自定义对话框的判断方式:

[cpp] view plain copy
  1. QMessageBox message(QMessageBox::NoIcon, "Show Qt""Do you want to show Qt dialog?", QMessageBox::Yes | QMessageBox::No, NULL);   
  2. if(message.exec() == QMessageBox::Yes)   
  3. {   
  4.         QMessageBox::aboutQt(NULL, "About Qt");   
  5. }  

原创粉丝点击