C++.QT编程学习笔记——点击一个按钮后出现选择文件对话框

转载自http://alanshuxin.blog.sohu.com/165100687.html

void MainWindow::open()
{
    if (okToContinue()) {
        QString fileName = QFileDialog::getOpenFileName(this,
                                   tr("Open Spreadsheet"), ".",
                                   tr("Spreadsheet files (*.sp)"));
        if (!fileName.isEmpty())
            loadFile(fileName);
    }
}

open()槽函数对应于File/Open菜单 。他首先调用okToContinue()函数来处

理任何未保存的更改。然后使用静态函数QFileDialog::getOpenFileName() 来

获取用户的文件名。该函数会弹出一个对话框,提示用户选择一个文件,以字符

串的形式返回一个文件名,如果用户选择cancel,将返回空字符串。
QFileDialog::getOpenFileName() 函数的第一个参数指的是父部件。对话框的

父子关系不像其他部件,对话框是一个独立是部件,如果他有父部件,就默认在

父部件的中间偏上位置,子对话框也响应父部件的任务项。

第二个参数是我们设置的对话框的标题。第三个参数告诉我们它开始的路径,本

例是在当前目录下。
第四个参数设置文件过滤器。一个文件过滤器包含描述性文字和通配符。如果我

们除了支持电子表格自身文件格式外还需要支持逗号分割文件和Lotus1-2-3文件

,我们需要这样设置过滤器:


你可能感兴趣的:(编程,C++,任务,Lotus,spreadsheet)