【qt】一次性学会所有对话框1

简介: 【qt】一次性学会所有对话框

一.前言

对话框就是主窗口的子窗口弹出,以供你操作完后,才能继续对主窗口进行操作。

光说不练假把式,我们还是来边做边学。

目标图:

看到这么多是不是已经害怕了,不用怕,只要记住接口就行了,参数我们可以查找在线文档!

先做界面吧!

不会的可以问我哦,界面的拖放就不讲了!

二.文件对话框

1.选择一个文件

void MainWindow::on_pushButtonSelectFile_clicked()
{
   QString fileName= QFileDialog::getOpenFileName(
               this,//父窗口是谁
               "选择一个文件",//对话框标题
               QDir::currentPath(),//打开对话框的路径
               "文本文件(*.txt);;C/C++文件(*.c *.h *.cpp);;图片文件(*.png *.jpg *.gif);;所有文件(*.*)");//筛选器
   if(!fileName.isEmpty())
   {
       ui->plainTextEdit->appendPlainText(fileName);
   }
}

运行结果:

点击会弹出你刚刚设置路径的文件对话框

确定后

可以通过f1来查看参数,所以我们需要的是记住接口

2.选择多个文件

用法基本与选择一个文件相同,只不过接口多了一个S,返回的是一个字符串链表而已!

void MainWindow::on_pushButtonSelectFiles_clicked()
{
    QStringList fileNames= QFileDialog::getOpenFileNames(
                this,
                "选择多个文件",
                QDir::currentPath(),
                "文本文件(*.txt);;C/C++文件(*.c *.h *.cpp);;图片文件(*.png *.jpg *.gif);;所有文件(*.*)");
    if(fileNames.count()>0)
    {
        for(int i=0;i<fileNames.count();i++)
        {
            ui->plainTextEdit->appendPlainText(fileNames[i]);
        }
        
    }
}

运行结果:

3.选择目录

void MainWindow::on_pushButtonSelectMu_clicked()
{
    QString fileName= QFileDialog::getExistingDirectory(
                this,
                "选择一个文件",
                QDir::currentPath(),
                QFileDialog::ShowDirsOnly);//只显示目录
    if(!fileName.isEmpty())
    {
        ui->plainTextEdit->appendPlainText(fileName);
    }
}

运行结果:

4.保存文件

void MainWindow::on_pushButtonSaveFile_clicked()
{
    QString fileName= QFileDialog::getSaveFileName(
                this,
                "选择一个文件",
                QDir::currentPath(),
                "文本文件(*.txt);;C/C++文件(*.c *.h *.cpp);;图片文件(*.png *.jpg *.gif);;所有文件(*.*)");
    if(!fileName.isEmpty())//如果路径不为空
    {
        //将纯文本编辑器的内容保存到txt文件中
        QFile qFile(fileName);
        //以只写,保存到文本文件,截断的方式打开文件
        if(!qFile.open(QIODevice::WriteOnly|QIODevice::Text|QIODevice::Truncate))
        {
            return;//打开文件失败就返回
        }
        QTextStream stream(&qFile);
        stream<<ui->plainTextEdit->toPlainText();
        qFile.close();
        ui->plainTextEdit->appendPlainText("已保存到:"+fileName);
    }
}

运行结果:

我们来看看是不是真的保存了

哈哈看来真的保存了也。

【qt】一次性学会所有对话框2:https://developer.aliyun.com/article/1523167


相关文章
|
6月前
Qt之对话框
Qt之对话框
|
4月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox
【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox
706 4
【Qt 学习笔记】Qt窗口 | 标准对话框 | 消息对话框QMessageBox
|
4月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 文件对话框QFileDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 文件对话框QFileDialog
797 4
|
4月前
|
数据安全/隐私保护
【Qt 学习笔记】Qt窗口 | 对话框 | 模态与非模态对话框的创建
【Qt 学习笔记】Qt窗口 | 对话框 | 模态与非模态对话框的创建
408 4
|
4月前
|
搜索推荐 C++
【Qt 学习笔记】Qt窗口 | 对话框 | 创建自定义对话框
【Qt 学习笔记】Qt窗口 | 对话框 | 创建自定义对话框
101 4
|
4月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 输入对话框QInputDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 输入对话框QInputDialog
295 3
|
4月前
|
数据可视化
【Qt 学习笔记】Qt窗口 | 标准对话框 | 字体对话框QFontDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 字体对话框QFontDialog
88 3
|
4月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 颜色对话框QColorDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 颜色对话框QColorDialog
603 3
|
4月前
【Qt 学习笔记】Qt窗口 | 对话框 | Qt对话框的分类及介绍
【Qt 学习笔记】Qt窗口 | 对话框 | Qt对话框的分类及介绍
135 3