1、标准文件对话框
就是点击这个按钮就会打开文件的对话框
具体的实现是:
头文件dialog.h:
#include <QDialog>
#include <QLineEdit>
#include <QGridLayout> //网格布局
#include <QPushButton>
#include <iostream>
#include "inputdlg.h"
#include "msgboxdlg.h"
using namespace std;
class Dialog : public QDialog
{
Q_OBJECT
public:
Dialog(QWidget *parent = 0);
~Dialog();
private:
//打开文件的控件
QPushButton *fileBtn;
QLineEdit *fileLineEdit;
QGridLayout *mainLayout;
private slots: //这个是槽函数
void showFile(); //打开文件
};
定义实现文件
dialog.cpp
#include "dialog.h"
#include <QFileDialog>
#include <QColorDialog>
#include <QMessageBox>
Dialog::Dialog(QWidget *parent)
: QDialog(parent) //构造函数
{
setWindowTitle("各种标准对话框的实例"); //设置编码格式之后就可以使用中文了
//文件控件
fileBtn = new QPushButton;
fileBtn->setText("wen件标准对话框实例");
fileLineEdit = new QLineEdit; //用来显示选择的文件名
mainLayout = new QGridLayout(this); //布局设计
mainLayout->addWidget(fileBtn, 0, 0);
mainLayout->addWidget(fileLineEdit, 0, 1);
connect(fileBtn, SIGNAL(clicked()), this, SLOT(showFile())); //事件关联
}
//显示文件相应
void Dialog::showFile()
{
QString s = QFileDialog::getOpenFileName(this, "打开", "../ ", "C++ files(*.cpp;*.c;*.h)"); //第三个参数是打开的初始路径,这里我们设置为debug的前一个文件夹
fileLineEdit->setText(s);
}
Dialog::~Dialog()
{
}
显示结果:
2、标准颜色对话框
显示:
头文件:
dialog.h
#include <QDialog>
#include <QLineEdit>
#include <QGridLayout> //网格布局
#include <QPushButton>
#include <QFontDialog>
#include <iostream>
#include "inputdlg.h"
#include "msgboxdlg.h"
using namespace std;
class Dialog : public QDialog
{
Q_OBJECT
public:
Dialog(QWidget *parent = 0);
~Dialog();
private:
//打开文件的控件
QPushButton *fileBtn;
QLineEdit *fileLineEdit;
QGridLayout *mainLayout;
//这个是标准颜色的控件
QPushButton *colorBtn;
QFrame *colorFrame;
private slots: //这个是槽函数
void showFile(); //打开文件
void showColor(); //颜色的打开
};
dialog.cpp
#include "dialog.h"
#include <QFileDialog>
#include <QColorDialog>
#include <QMessageBox>
Dialog::Dialog(QWidget *parent)
: QDialog(parent) //构造函数
{
setWindowTitle("各种标准对话框的实例"); //设置编码格式之后就可以使用中文了
//文件控件
fileBtn = new QPushButton;
fileBtn->setText("wen件标准对话框实例");
fileLineEdit = new QLineEdit; //用来显示选择的文件名
mainLayout = new QGridLayout(this); //布局设计
mainLayout->addWidget(fileBtn, 0, 0);
mainLayout->addWidget(fileLineEdit, 0, 1);
connect(fileBtn, SIGNAL(clicked()), this, SLOT(showFile())); //事件关联
//颜色部分
colorBtn = new QPushButton;
colorBtn->setText(tr("yan色标准对话框"));
colorFrame = new QFrame;
colorFrame->setFrameShape(QFrame::Box);
colorFrame->setAutoFillBackground(true);
mainLayout->addWidget(colorBtn, 1, 0);
mainLayout->addWidget(colorFrame, 1, 1);
connect(colorBtn, SIGNAL(clicked()), this, SLOT(showColor()));
}
//显示颜色
void Dialog::showColor()
{
/*
* getColor()函数是标准颜色对话框QColorDialog类的一个静态函数,该函数返回用户选择的颜色值,下面是getColor()函数形式:
* QColor getColor
* (
* const QColor& initial=Qt::white, //注
* QWidget* parent=0 //标准颜色对话框的父窗口
* );
*/
QColor c = QColorDialog::getColor(Qt::blue);
if(c.isValid())
{
colorFrame->setPalette(QPalette(c)); //这个得到选中的颜色显示出来
}
}
//显示文件相应
void Dialog::showFi