zoukankan      html  css  js  c++  java
  • QFileDialog关于选择文件对话框中的几个信号的说明(currentChanged,directoryEntered,fileSelected,filterSelected)

    QFileDialog关于选择文件对话框中的几个信号 实例:

    openFile::openFile(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::openFile)
    {
    ui->setupUi(this);
    fDialog = new QFileDialog(this);
    fDialog->setFileMode(QFileDialog::Directory);
    connect(fDialog,SIGNAL(currentChanged ( const QString & )),this,SLOT(cc(const QString & )));
    connect(fDialog,SIGNAL(directoryEntered ( const QString &)),this,SLOT(de(const QString & )));
    connect(fDialog,SIGNAL(fileSelected ( const QString & )),this,SLOT(fs(const QString & )));
    connect(fDialog,SIGNAL(filesSelected ( const QStringList & )),this,SLOT(fss(const QStringList & )));
    connect(fDialog,SIGNAL(filterSelected ( const QString &)),this,SLOT(frs(const QString & )));

    fDialog->hide();
    }

    openFile::~openFile()
    {
    delete ui;
    }

    void openFile::on_pushButton_clicked()
    {
    fDialog->show();

    }

    void openFile::cc(const QString & path)
    {
    //在窗口中选择文件夹会出发该信号
    qDebug() <<"cc";
    qDebug() << path;
    }
    void openFile::de(const QString & directory){
    //选择文件夹进入时时触发 setFileMode(QFileDialog::Directory);
    qDebug() <<"de";
    qDebug() << directory;
    }
    void openFile::fs(const QString & file){
    //选中文件点击open后会出发该信号 至在打开单一文件时出发
    qDebug() <<"fs";
    qDebug() << file;
    }

    void openFile::fss(const QStringList & selected){
    //选中文件点击open后会出发该信号 选择单个或多个文件时出发 setFileMode(QFileDialog::ExistingFiles);
    qDebug() <<"fss";
    qDebug() << selected;
    }

    void openFile::frs(const QString & filter){
    qDebug() <<"frs";
    qDebug() << filter;
    }
    如果要保存一个文件
    需要设置这两个属性
    fDialog->setFileMode(QFileDialog::AnyFile);
    fDialog->setAcceptMode(QFileDialog::AcceptSave); //open按钮就会显示为save


    void frmMain::on_pushButton_file_clicked()
    {

    QString file = QFileDialog::getOpenFileName(this, tr("Open File"),"",tr("(*.bin)"));
    qDebug() << file;

    ……
    这种方式的文件选择对话框是和系统保持一致的。


    保存文件:

    QString filePathName = QFileDialog::getSaveFileName(this,tr("Open Config"),defaultFileName,tr("*"));

    if (!filePathName.isNull())
    {
    }
    else
    {

    ---------------------
    作者:阳光柠檬_
    来源:CSDN
    原文:https://blog.csdn.net/liukang325/article/details/13768589
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    根据表生成接收(zml)
    删除指定日期,指定设备的排产记录(zml)
    1029 Median
    1027 Colors in Mars (20 分)进制转换
    1028 List Sorting 排序
    1025 PAT Ranking
    1024 Palindromic Number(大数加法)
    1023 Have Fun with Numbers
    1022 Digital Library
    逆序打印乘法表
  • 原文地址:https://www.cnblogs.com/findumars/p/9818464.html
Copyright © 2011-2022 走看看