目录
void Dialog::on_btnOpen_clicked()
{ //选择单个文件
????QString curPath=QDir::currentPath();//获取系统当前目录
//??QString??curPath=QCoreApplication::applicationDirPath(); //获取应用程序的路径
????QString dlgTitle="选择一个文件"; //对话框标题
????QString filter="文本文件(*.txt);;图片文件(*.jpg *.gif *.png);;所有文件(*.*)"; //文件过滤器
????QString aFileName=QFileDialog::getOpenFileName(this,dlgTitle,curPath,filter);
????if (!aFileName.isEmpty())
????????ui->plainTextEdit->appendPlainText(aFileName);
}
QString QFileDialog::getOpenFileName
(
QWidget* parent = 0, //标准文件对话框的父窗口
const QString & caption = QString(), //标准文件对话框的标题名
const QString & dir = QString(), //注(1)
const QString & filter = QString(), //注(2)
QString * selectedFilter=0, //用户选择的过滤器通过此参数返回
Options options=0 //选择显示文件名的格式,默认是同时显示目录与文件名
)
QString filter ="文本文件(*.txt);;图片文件(*.jpg *.gif *.png);;所有文件(*.*)";
void Dialog::on_btnOpenMulti_clicked()
{ //选择多个文件
//??QString curPath=QCoreApplication::applicationDirPath(); //获取应用程序的路径
????QString curPath=QDir::currentPath();//获取系统当前目录
????QString dlgTitle="选择多个文件"; //对话框标题
????QString filter="文本文件(*.txt);;图片文件(*.jpg *.gif *.png);;所有文件(*.*)"; //文件过滤器
????QStringList fileList=QFileDialog::getOpenFileNames(this,dlgTitle,curPath,filter);
????for (int i=0; i<fileList.count();i++)
????????ui->plainTextEdit->appendPlainText(fileList.at(i));
}
void Dialog::on_btnSelDir_clicked()
{ //选择文件夹
????QString curPath=QCoreApplication::applicationDirPath(); //获取应用程序的路径
//??QString curPath=QDir::currentPath();//获取系统当前目录
//调用打开文件对话框打开一个文件
????QString dlgTitle="选择一个目录"; //对话框标题
????QString selectedDir=QFileDialog::getExistingDirectory(this,dlgTitle,curPath,QFileDialog::ShowDirsOnly);
????if (!selectedDir.isEmpty())
????????ui->plainTextEdit->appendPlainText(selectedDir);
}
void Dialog::on_btnSave_clicked()
{//保存文件
????QString curPath=QCoreApplication::applicationDirPath(); //获取应用程序的路径
????QString dlgTitle="保存文件"; //对话框标题
????QString filter="文本文件(*.txt);;h文件(*.h);;C++文件(.cpp);;所有文件(*.*)"; //文件过滤器
????QString aFileName=QFileDialog::getSaveFileName(this,dlgTitle,curPath,filter);
????if (!aFileName.isEmpty())
????????ui->plainTextEdit->appendPlainText(aFileName);
}
QColor::getColor
(
const QColor & initial = Qt::white, //注(1)
QWidget* parent = 0 //标准颜色对话框的父窗口
)
void Dialog::on_btnColor_clicked()
{
????QPalette pal=ui->plainTextEdit->palette(); //获取现有 palette
????QColor??iniColor=pal.color(QPalette::Text); //现有的文字颜色
????QColor color=QColorDialog::getColor(iniColor,this,"选择颜色");
????if (color.isValid()) //选择有效
????{
????????pal.setColor(QPalette::Text,color); //palette 设置选择的颜色
????????ui->plainTextEdit->setPalette(pal); //设置 palette
????}
}
QFont::getFont
(
bool* ok, //注(1)
QWidget* parent = 0 //标准字体对话框的父窗口
)
void Dialog::on_btnFont_clicked()
{//选择字体
????QFont iniFont=ui->plainTextEdit->font(); //获取文本框的字体
????bool???ok=false;
????QFont font=QFontDialog::getFont(&ok,iniFont); //选择字体
????if (ok) //选择有效
????????ui->plainTextEdit->setFont(font);
}
QString getText
(
QWidget* parent, //标准输入对话框的父窗口
const QString& title, //标准输入对话框的标题名
const QString& label, //标准输入对话框的标签提示
QLineEdit::EchoMode mode=QLineEdit::Normal,
//指定标准输入对话框中QLineEidt控件的输入模式
const QString& text = QString(), //标准字符输入对话中弹出式QLineEdit控件默认出现的文字
bool* ok = 0, //注(1)
Qt::WindowFlags flags = 0 //指明标准输入对话框的窗体标识
)
void Dialog::on_btnInputString_clicked()
{ //输入字符串
????QString dlgTitle="输入文字对话框";
????QString txtLabel="请输入文件名";
????QString defaultInput="新建文件.txt";
????QLineEdit::EchoMode echoMode=QLineEdit::Normal;//正常文字输入
//????QLineEdit::EchoMode echoMode=QLineEdit::Password;//密码输入
????bool ok=false;
????QString text = QInputDialog::getText(this, dlgTitle,txtLabel, echoMode,defaultInput, &ok);
????if (ok && !text.isEmpty())
????????ui->plainTextEdit->appendPlainText(text);
}
int getInt
(
QWidget* parent, //标准输入对话框的父窗口
const QString& title, //标准输入对话框的标题名
const QString& label, //标准输入对话框的标签提示
int value = 0, //指定标准输入对话框中QSpinBox控件的默认显示值
int min = -2147483647, //指定QSpinBox控件的数值范围
int max = 2147483647, //指定QSpinBox控件的数值范围
int step = 1, //指定QSpinBox控件的步进值
bool* ok = 0, //注(1)
Qt::WindowFlags flags = 0 //指明标准输入对话框的窗口标识
)
void Dialog::on_btnInputInt_clicked()
{//输入整数
????QString dlgTitle="输入整数对话框";
????QString txtLabel="设置字体大小";
????int defaultValue=ui->plainTextEdit->font().pointSize(); //现有字体大小
????int minValue=6, maxValue=50,stepValue=1; //范围,步长
????bool ok=false;
????int inputValue = QInputDialog::getInt(this, dlgTitle,txtLabel,
???????????????????????????????defaultValue, minValue,maxValue,stepValue,&ok);
????if (ok) //是否确认输入
????{
????????QFont???font=ui->plainTextEdit->font();
????????font.setPointSize(inputValue);
????????ui->plainTextEdit->setFont(font);
????}
}
double getDouble
(
QWidget* parent, //标准输入对话框的父窗口
const QString& title, //标准输入对话框的标题名
const QString& label, //标准输入对话框的标签提示
double value = 0, //指定标准输入对话框中QSpinBox控件默认的显示值
double min = -2147483647, //指定QSpinBox控件的数值范围
double max = 2147483647, //指定QSpinBox控件的数值范围
int decimals = 1, //指定QSpinBox控件的步进值
bool* ok = 0, //注(1)
Qt::WindowFlags flags = 0 //指明标准输入对话框的窗口标识
)
void Dialog::on_btnInputFloat_clicked()
{ //输入浮点数
????QString dlgTitle="输入浮点数对话框";
????QString txtLabel="输入一个浮点数";
????float defaultValue=3.13;
????float minValue=0, maxValue=10000;??//范围
????int decimals=2;//小数点位数
????bool ok=false;
????float inputValue = QInputDialog::getDouble(this, dlgTitle,txtLabel,
????????????????????????????defaultValue, minValue,maxValue,decimals,&ok);
????if (ok) //确认选择
????{
????????QString str=QString::asprintf("输入了一个浮点数:%.2f",inputValue);
????????ui->plainTextEdit->appendPlainText(str);
????}
}
QString getItem
(
QWidget* parent, //标准输入对话框的父窗口
const QString& title, //标准输入对话框的标题名
const QString& label, //标准输入对话框的标签提示
const QStringList& items, //注(1)
int current = 0, //注(2)
bool editable = true, //指定QComboBox控件中显示的文字是否可编辑
bool* ok = 0, //注(3)
Qt::WindowFlags flags = 0 //指明标准输入对话框的窗体标识
)
void Dialog::on_btnInputItem_clicked()
{ //条目选择输入
????QStringList items; //ComboBox 列表的内容
????items <<"优秀"<<"良好"<<"合格"<<"不合格";
????QString dlgTitle="条目选择对话框";
????QString txtLabel="请选择级别";
????int?????curIndex=0; //初始选择项
????bool????editable=true; //ComboBox是否可编辑
????bool????ok=false;
????QString text = QInputDialog::getItem(this, dlgTitle,txtLabel,items,curIndex,editable,&ok);
????if (ok && !text.isEmpty())
????????ui->plainTextEdit->appendPlainText(text);
}
StandardButton QMessage::question
(
QWidget* parent, //消息框的父窗口指针
const QString& title, //消息框的标题栏
const QString& text, //消息框的文字提示信息
StandardButtons buttons = ok, //注(1)
StandardButton defaultButton = NoButton //注(2)
)
StandardButton QMessage::information
(
QWidget* parent, //消息框的父窗口指针
const QString& title, //消息框的标题栏
const QString& text, //消息框的文字提示信息
StandardButtons buttons = ok, //同Question消息框的注释内容
StandardButton defaultButton = NoButton //同Question消息框的注释内容
)
StandardButton QMessage::warning
(
QWidget* parent, //消息框的父窗口指针
const QString& title, //消息框的标题栏
const QString& text, //消息框的文字提示信息
StandardButtons buttons = ok, //同Question消息框的注释内容
StandardButton defaultButton = NoButton //同Question消息框的注释内容
)
StandardButton QMessage::critical
(
QWidget* parent, //消息框的父窗口指针
const QString& title, //消息框的标题栏
const QString& text, //消息框的文字提示信息
StandardButtons buttons = ok, //同Question消息框的注释内容
StandardButton defaultButton = NoButton //同Question消息框的注释内容
)
StandardButton QMessage::about
(
QWidget* parent, //消息框的父窗口指针
const QString& title, //消息框的标题栏
const QString& text //消息框的文字提示信息
)
void QMessageBox::aboutQt
(
QWidget* parent, //消息框的父窗口指针
const QString& title = QString() //消息框的标题栏
)
StandardButton QMessageBox::warning(QWidget *parent,const QString &title,const QString &text,StandardButtons buttons=Ok,StandardButton defaultButton=NoButton)
void Dialog::on_btnMsgInformation_clicked()
{
????QString dlgTitle="information消息框";
????QString strInfo="文件已经打开,字体大小已设置";
//????QMessageBox::information(this, dlgTitle, strInfo);//使用缺省的按钮
???QMessageBox::information(this, dlgTitle, strInfo,
??????????????????????????????QMessageBox::Ok,QMessageBox::NoButton);
}
void Dialog::on_btnMsgWarning_clicked()
{
????QString dlgTitle="warning 消息框";
????QString strInfo="文件内容已经被修改";
????QMessageBox::warning(this, dlgTitle, strInfo);
//????QMessageBox::warning(this, dlgTitle, strInfo, QMessageBox::Ok,QMessageBox::NoButton);
}
void Dialog::on_btnMsgCritical_clicked()
{
????QString dlgTitle="critical消息框";
????QString strInfo="有不明程序访问网络";
????QMessageBox::critical(this, dlgTitle, strInfo);
//????QMessageBox::critical(this, dlgTitle, strInfo, QMessageBox::Ok,QMessageBox::NoButton);
}
void Dialog::on_btnMsgAbout_clicked()
{
????QString dlgTitle="about消息框";
????QString strInfo="我开发的数据查看软件 V1.0 \n 保留所有版权";
????QMessageBox::about(this, dlgTitle, strInfo);
}
void Dialog::on_btnMsgAboutQt_clicked()
{
????QString dlgTitle="aboutQt消息框";
????QMessageBox::aboutQt(this, dlgTitle);
}
StandardButton QMessageBox::question(QWidget *parent,const QString &title,const QString &text,StandardButtons buttons = StandardButtons(Yes|NO),StandardButton defaultButton=NoButton)
void Dialog::on_btnMsgQuestion_clicked()
{
????QString dlgTitle="Question消息框";
????QString strInfo="文件已被修改,是否保存修改?";
????QMessageBox::StandardButton??defaultBtn=QMessageBox::NoButton; //缺省按钮
????QMessageBox::StandardButton result;//返回选择的按钮
????result=QMessageBox::question(this, dlgTitle, strInfo,
??????????????????????QMessageBox::Yes|QMessageBox::No |QMessageBox::Cancel,
??????????????????????defaultBtn);
????if (result==QMessageBox::Yes)
????????ui->plainTextEdit->appendPlainText("Question消息框: Yes 被选择");
????else if(result==QMessageBox::No)
????????ui->plainTextEdit->appendPlainText("Question消息框: No 被选择");
????else if(result==QMessageBox::Cancel)
????????ui->plainTextEdit->appendPlainText("Question消息框: Cancel 被选择");
????else
????????ui->plainTextEdit->appendPlainText("Question消息框: 无选择");
}