标准对话框
来源:互联网 发布:国泰君安快期交易软件 编辑:程序博客网 时间:2024/05/01 05:37
Qt提供了一些标准对话框,全部继承自QDialog类,并增加了自己的特点。
下面都是一些简单的demo演示,实际使用再详细学习。
1.QColorDialog 颜色对话框
Dialog widget for specifying colors。在之前使用的代码,将槽函数进行修改。
void MainWindow::on_PushButton_clicked(){ QColor c = QColorDialog::getColor(Qt::red,//设置初始颜色,默认是白色 this,//设置其父对话框 "颜色");//对话框标题 qDebug()<<"颜色:"<<c;}点击按钮后,会弹出如下对话框
随便选取一个颜色,点击确定,会输出如下内容
颜色: QColor(ARGB 1, 1, 1, 1)
2.QFileDialog 文件对话框
它可以让用户选取一个文件夹或文件。
void MainWindow::on_PushButton_clicked(){ //文件对话框 QStringList file_name = QFileDialog::getOpenFileNames(); qDebug()<<"file path:"<<file_name;}执行效果
相应的输出为:
file path: ("F:/QT/Demo/build-demo-Desktop_Qt_5_7_0_MSVC2013_64bit-Debug/Makefile", "F:/QT/Demo/build-demo-Desktop_Qt_5_7_0_MSVC2013_64bit-Debug/Makefile.Debug", "F:/QT/Demo/build-demo-Desktop_Qt_5_7_0_MSVC2013_64bit-Debug/Makefile.Release", "F:/QT/Demo/build-demo-Desktop_Qt_5_7_0_MSVC2013_64bit-Debug/ui_mainwindow.h")
3.QFontDialog 字体窗口对话窗
提供了选择一个字体,即可获取字体void MainWindow::on_PushButton_clicked(){ //字体对话框 bool ok; QFont font = QFontDialog::getFont(&ok); if(ok) { qDebug()<<"字体"<<font; }}
效果
输出:
字体 QFont( "Agency FB,22,-1,5,75,1,0,0,0,0" )
4.QInputDialog输入对话框
获取输入的文本,整型,浮点型等void MainWindow::on_PushButton_clicked(){//输入对话框 bool ok; QString s = QInputDialog::getText(this, "文字", "输入", QLineEdit::Normal, "admin", &ok); qDebug()<<"文字输入:"<<s; QStringList items; items.append("item1"); items.append("item2"); QString item = QInputDialog::getItem(this, "dialog", "input", items, 0, true, &ok); qDebug()<<"条目输入:"<<item;}
效果:
输出:
文字输入: "admin"条目输入: "item1"
5.QMessageBox 消息对话框
可以向用户通知一些信息,也可以让用户执行一些选择。void MainWindow::on_PushButton_clicked(){ //消息对话框 //问题对话框 int msg1 = QMessageBox::question(this, "question", "Do you like xiaomi?", QMessageBox::Yes, QMessageBox::No ); if(msg1 == QMessageBox::Yes) qDebug()<<"yes"; //消息提示对话框 int msg2 = QMessageBox::information(this, "info", "you like xiaomi"); //警告对话框 int msg3 = QMessageBox::warning(this, "warning", "xiaomi is a good company", QMessageBox::Abort); //错误对话框 int msg4 = QMessageBox::critical(this, "error", "you can not dislike xiaomi" ); //关于对话框 QMessageBox::about(this, "about", "xiaomi6 is a great phone!");}分别的效果
6.QProgressDialog 进度对话框
对一个可能耗时较长的操作的一个进度显示对话框。
void MainWindow::on_PushButton_clicked(){ QProgressDialog progress("进度", "取消", 0,50000, this); progress.setWindowTitle("进度"); progress.setWindowModality(Qt::WindowModal); progress.show(); for(int i=0;i<=50000;i++) { progress.setValue(i); QCoreApplication::processEvents(); }}进行一个模拟操作。
效果
7.QErrorMessage 错误消息对话框
void MainWindow::on_PushButton_clicked(){ //错误消息对话框 QErrorMessage *errorDialog = new QErrorMessage(); errorDialog->setWindowTitle("error dialog"); errorDialog->showMessage("error!!");}
效果
可以看到相比QMessageBox的错误消息对话框,多出了一个提示信息
8.QWizardpage 向导对话框
它相比上面的那些对话框多了很多东西,首先QWizard是一个框架,它包含了设计向导的所有函数,可以用它来实现想要的效果。
void MainWindow::on_PushButton_clicked(){ //向导对话框 QWizardPage *p1 = new QWizardPage(); p1->setTitle("p1"); QWizardPage *p2 = new QWizardPage(); p2->setTitle("p2"); QWizardPage *p3 = new QWizardPage(); p3->setTitle("p3"); QWizardPage *p4 = new QWizardPage(); p4->setTitle("p4"); QWizard w; w.setWindowTitle("向导"); w.addPage(p1); w.addPage(p2); w.addPage(p3); w.addPage(p4); w.exec();}
效果
0 0
- 标准对话框
- 标准对话框
- 标准对话框
- symbian对话框总结:标准对话框
- 使用标准对话框
- VB各种标准对话框
- Qt标准对话框
- 标准对话框的使用
- QT标准对话框
- Qt标准对话框
- Qt标准对话框
- QT 标准对话框
- 使用标准输入对话框
- QT 内置标准对话框
- 标准对话框 QMessageBox
- 【Qt】标准文件对话框
- 标准对话框 AlertDialog 使用
- 【Qt】标准输入对话框
- Hibernate_映射_关联关系_多对多映射2
- win10 opencv 项目程序移植到 ubuntu16.04: 3.项目自启动和修改分辨率
- 电脑组装之前期摸索一
- 总结String类字符串与其他类型的转换
- LeetCoder 16 3Sum Closest
- 标准对话框
- JavaScript之对象
- 阿里云ECS+CentOS 7.0+Docker+Redmine环境搭建
- requestDispatcher和sendRedirect的区别和联系
- Java泛型_下限_super
- 安全管理·十七
- 55. Jump Game
- Java笔试题解(3)
- git