C/C++ -- Gui编程 -- Qt库的使用 -- 标准对话框
-----mywidget.cpp-----
#include "mywidget.h" #include "ui_mywidget.h" #include <QFileDialog> #include <QColorDialog> #include <QFontDialog> #include <QInputDialog> #include <QMessageBox> #include <QProgressDialog> #include <QErrorMessage> #include <QDebug> MyWidget::MyWidget(QWidget *parent) : QWidget(parent), ui(new Ui::MyWidget) { ui->setupUi(this); } MyWidget::~MyWidget() { delete ui; } void MyWidget::on_pushButton_clicked() { QStringList filenames = \ QFileDialog::getOpenFileNames(\ this, "文件对话框", "F:",\ "图片(*png);;音乐(*mp3 *wma)"); qDebug()<<"FileNames"<<filenames<<endl; } void MyWidget::on_pushButton_3_clicked() { QColor color = QColorDialog::getColor(Qt::red, this, "颜色选择", \ QColorDialog::ShowAlphaChannel); qDebug()<<color<<endl; } void MyWidget::on_pushButton_2_clicked() { bool ok; QFont font = QFontDialog::getFont(&ok, this); if(not ok) qDebug()<<"没有选择字体"<<endl; else qDebug()<<"字体:"<<font<<endl; } void MyWidget::on_pushButton_4_clicked() { bool ok; QString string = QInputDialog::getText(this, "字符串", "请输入字符串",QLineEdit::Normal, "admin", &ok); if(ok) qDebug()<<"输入了字符串"<<string<<endl; , -, , , &ok); if(ok) qDebug()<<"输入了整数"<<value<<endl; , &ok); if(ok) qDebug()<<"输入了浮点数"<<d<<endl; QStringList items; items<<"条目1"<<"条目2"; QString item = QInputDialog::getItem(, true, &ok); if(ok)qDebug()<<"选择了条目"<<item; } void MyWidget::on_pushButton_5_clicked() { int ret = QMessageBox::question(this, "列位看官", "你道此书从何而来?", QMessageBox::Yes, QMessageBox::No); if(ret == QMessageBox::Yes) qDebug()<<"说起根由虽近荒唐,细按则深有趣味"<<endl; ret = QMessageBox::information(this, "一场幽梦同谁近", "千古情人独我痴", QMessageBox::Ok); if(ret == QMessageBox::Ok) qDebug()<<"谋事在人,成事在天"<<endl; ret = QMessageBox::warning(this,"《四部丛刊》", "《经进东坡文集事略》 ", QMessageBox::Abort); if(ret == QMessageBox::Abort) qDebug()<<"天道不言而品物亨、岁功成"<<endl; ret = QMessageBox::critical(this, "致虚极,守静笃", "万物并作,吾以观复", QMessageBox::YesAll); if(ret == QMessageBox::YesAll) qDebug()<<"明月皎皎照我床,星汉西流夜未央"<<endl; QMessageBox::about(this, "不出户,知天下;不窥牖,见天道。", \ "其出弥远,其知弥少。是以圣人不行而知,不见而明,不为而成"); QMessageBox::aboutQt(this); } void MyWidget::on_pushButton_6_clicked() { QProgressDialog dlg(, , this); dlg.setWindowTitle("RECUVA"); dlg.setWindowModality(Qt::WindowModal); dlg.show(); ; i<; i++) { dlg.setValue(i); QCoreApplication::processEvents(); if(dlg.wasCanceled()) break; } dlg.setValue(); qDebug()<<"恢复结束"<<endl; } void MyWidget::on_pushButton_7_clicked() { QErrorMessage *dlg = new QErrorMessage(this); dlg->setWindowTitle("这不是你的错"); dlg->showMessage("卡莱尔轻声地安慰我说"); } QWizardPage* MyWidget::createPage1() { QWizardPage * page = new QWizardPage; page->setTitle("欢迎进入Windows卸载向导"); return page; } QWizardPage* MyWidget::createPage2() { QWizardPage * page = new QWizardPage; page->setTitle("你真的要卸载吗?"); return page; } QWizardPage* MyWidget::createPage3() { QWizardPage * page = new QWizardPage; page->setTitle("卸载已完成"); return page; } void MyWidget::on_pushButton_8_clicked() { QWizard wizard(this); wizard.setWindowTitle("Win7卸载向导"); wizard.addPage(createPage1()); wizard.addPage(createPage2()); wizard.addPage(createPage3()); wizard.exec(); }
C/C++ -- Gui编程 -- Qt库的使用 -- 标准对话框的更多相关文章
- Python -- Gui编程 -- Qt库的使用 -- 菜单与对话框
1.菜单 import sys from PyQt4 import QtCore, QtGui class MyWindow(QtGui.QMainWindow): def __init__(self ...
- C/C++ -- Gui编程 -- Qt库的使用 -- 理解主窗体构造函数
MyWidget做父窗体 MyWidget的构造函数中可以手动添加组件 Ui::MyWidget存放子部件 Ui::MyWidget执行setupUi()函数为子部件开辟空间,指定父窗体 MyWidg ...
- C/C++ -- Gui编程 -- Qt库的使用 -- 信号与槽 -- 欢迎界面
程序运行先显示一个对话框,确定进入主程序 1.新建Qt工程,类MyWidget,基类QWidget 2.新建设计师界面类MyDialog,基类QDialog 3.-----main.cpp----- ...
- C/C++ -- Gui编程 -- Qt库的使用 -- 信号与槽的关联
Qt信号与槽的三种关联方法:1.设计界面关联,编辑信号/槽,自动关联 2.手动关联(1).头文件中定义槽 -----mywidget.h----- #ifndef MYWIDGET_H #define ...
- C/C++ -- Gui编程 -- Qt库的使用 -- Qt5总结
主要变化: 1.与Qt4相比,Qt5可以直接显示中文不需要手工转码2.Qt5模块发生变化,大部分组件并入widgets模块 注意事项:工程文件加一句greaterThan(QT_MAJOR_VERSI ...
- C/C++ -- Gui编程 -- Qt库的使用 -- Qt5试用
1.头文件<QtGui>变成了<QtWidgets> 相应<QtGui/***>变成了<QtWidgets/***> 2.QTextCodec::set ...
- C/C++ -- Gui编程 -- Qt库的使用 -- 使用小写qDebug调试程序
qDebug作为printf不需要头文件 qDebug()作为cout要使用头文件<QDebug> -----debug.cpp----- -----debug.cpp----- #inc ...
- C/C++ -- Gui编程 -- Qt库的使用 -- Qt窗体的类型状态布局
-----工程WindowTest----- 1.-----窗体类型type.cpp----- #include <QtGui> int main(int argc, char * arg ...
- C/C++ -- Gui编程 -- Qt库的使用 -- 使用自定义类
1.新建空Qt工程 2.新建C++类HelloQt 3.新建ui文件,添加部件,重命名主窗体(对话框)类名HelloQt,构建生成ui头文件 4.修改头文件helloqt.h #ifndef HELL ...
随机推荐
- oracle中row_number() over()分析函数用法
row_number()over(partition by col1 order by col2)表示根据col1分组,在分组内部根据col2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内 ...
- 让cxGrid像Excel那样高亮显示选区的行号列标
http://www.oschina.net/code/snippet_54100_1102 Developer Express的cxGrid控件是一个相当有特色的数据栅格组件,支持自动分组.卡片式显 ...
- Python学习-41.Python中的断言
先来点题外话: 在现代编程开发中,TDD(测试驱动开发)变得越来越流行(PS:DDD(领域驱动开发)也是,但两者并不冲突,就像面向过程和面向对象).而作为TDD的根本——单元测试也是越来越重要,单元测 ...
- LayaAir从入门到放弃
我是一个小白程序员,准备开发小程序找了很久小程序开发引擎,看到白鹭和LayaAir .经过一番资料查找后被LayaAir高性能.接口简洁及社区活跃所吸引,然后选择了LayaAir. 开发过程中一般小问 ...
- 移植Max中的控制器到Unity - 前言
一切源自于一个ppt http://pan.baidu.com/s/1kT8x2V9 看到这个ppt之前,其实自己也想过将Max当中的一些约束移植到游戏中,一方面是那时候能力不足,另一方面还是自己不那 ...
- js代码上的优化
例1 if ( config.url === '/web/teacher/classes' || config.url === '/web/teacher/students || config.u ...
- hdoj1045 Fire Net(二分图最大匹配)
题意:给出一个图,其中有 . 和 X 两种,. 为通路,X表示墙,在其中放炸弹,然后炸弹不能穿过墙,问你最多在图中可以放多少个炸弹? 这个题建图有点复杂orz. 建图,首先把每一行中的可以放一个炸弹的 ...
- PHP之旅9 MySQL数据库
PHP最主要的还是进行数据处理的,所以与数据库的交互是非常重要的. 现在主流的数据库有:Oracle.DB2.Microsoft SQL Server.MySQL等. MySQL由于其体积小.速度快. ...
- [Auto Testing] 工具准备:Selenium 与 ChromeDriver
<留存> Selenium http://selenium-release.storage.googleapis.com/index.html https://www.seleniumhq ...
- SQL 高效的万能分页存储过程
代码如下: USE [Blog] IF OBJECT_ID('Proc_Paging', 'P') IS NOT NULL --删除同名存储过程 DROP PROC Proc_Paging GO CR ...