打开软件,设置文件夹路径A、B并显示
在GetPath界面选用函数FileDialog::getExistingDirectory()打开已有的文件夹,它的用法如下:
QFileDialog::getExistingDirectory()用于选择文件夹按钮上,选择文件夹。
QString dir = QFileDialog::getExistingDirectory(this, tr("Open Directory"),
"/home",
QFileDialog::ShowDirsOnly
| QFileDialog::DontResolveSymlinks);
补充:QFileDialog::getOpenFileName()用于选择文件夹中的图片或者文件,用法如下,这里不适用。
QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"),
"/home",
tr("Images (*.png *.xpm *.jpg)"));
1.将文件夹的路径名在GetPath头文件里设置为第一个界面的的私有成员,方便后续传输使用。
private:
QString OpenFilePathA;
QString OpenFilePathB;
2.在GetPath源文件中实现打开文件夹,并显示路径。
void GetPath::on_pushButton_A_clicked()
{
//打开A文件的文件夹
OpenFilePathA = QFileDialog::getExistingDirectory(this,"请选择文件夹A","./");
if(OpenFilePathA.isEmpty())
{
return;
}
else{
//qDebug() << OpenFilePathA << endl;
//将路径显示在lineEdit上
ui->lineEdit_pathA->setText(OpenFilePathA);
}
}
3.设置信号用于发送A、B路径,并设置按键实现界面跳转和信息提示。
signals:
void show_DisplayInterface_page(const QString&,const QString&);
void GetPath::on_pushButton_start_clicked()
{
if(OpenFilePathA!=""&&OpenFilePathB!="")
{
this->hide();
emit show_DisplayInterface_page(OpenFilePathA,OpenFilePathB);
}
else{
QMessageBox::information(this,"提示","请选择文件路径");
return;
}
}
效果: