Qt的内建(built-in)对话框:
颜色对话框(QColorDialog),选择颜色
- QColor clr=QColorDialog::getColor(plt.color(QPalette::Base),this);
错误消息框(QErrorMessage),显示错误信息
- QErrorMessage *box=new QErrorMessage(this);
- box->setWindowTitle("错误消息框");
- box->showMessage("错误消息框实例1");
文件对话框(QFileDialog),选择一个或多个文件及目录
- QString filename=QFileDialog::getOpenFileName(this,"打开文件","D:","任何文件(*.*);;文本文件(*.txt);;图像文件(*.jpg)");
字体对话框(QFontDialog),字体设置
- bool ok;
- const QFont& ft=QFontDialog::getFont(&ok,display_textedit->font(),this,"字体对话框");
输入对话框(QInputDialog),进行简单输入
- bool ok;
- QString input_text=QInputDialog::getText(this,"输入对话框","输入文本",QLineEdit::Normal,"我是默认输入的内容",&ok);
页设置对话框(QPageSetupDialog),配置与打印机相关的选项
- QPrinter printer;
- QPageSetupDialog dlg(&printer,this);
- dlg.setWindowTitle("页面设置对话框");
- if(dlg.exec()==QDialog::Accepted)
- {
- //我是下一步处理。。。
- }
进度对话框(QProgressDialog),显示进度条
- QProgressDialog progress("正在复制文件...","取消",0,100000,this);
- progress.setWindowModality(Qt::WindowModal);//模态对话框
- progress.show();
打印对话框(QPrintDialog),配置打印机
- QPrinter printer;
- QPrintDialog dlg(&printer,this);
- dlg.setWindowTitle("打印对话框");
多个信号连接一个槽时,在槽里可以用QObject::sender()返回发送信号的对象的指针,返回类型为QObject*。
如demo中:
QPushButton *btn=qobject_cast<QPushButton*>(sender());//获取发送信号的按钮的指针