简要说明:在我的 Qt 实用程序中,我希望用户在发生以下事情后立即点击关闭按钮
1) 出现一个文件对话框,其中包含保存/取消选项和默认文件名。
2)如果用户将文件保存在他
计算机上的不同位置,我应该能够在该保存的文件上写入日志。
我已经完成了第一部分,但是当用户已经关闭对话框时,我对如何使用完整路径检索文件名一无所知。
第 1 部分的我的代码如下所示。
void some_class ::on_write_file()
{
// some code ..
bla bla bla
switch( set_file_name_for_logging( QString::fromStdString( filename ) , this ) )
{
case QDialog::Accepted :
std::cout <<" Retrive filename and full path name from the location where user has saved the file " and write on it;
break;
case QDialog::Rejected :
break;
default :
throw_error( "Unexpected return value from save_ dump file dialog" );
break;
}
}
}
int set_file_name_for_logging( const QString& str, som_class *cal )
{
QFileDialog file_dialog( cal );
file_dialog.setDirectory(".");
file_dialog.setAcceptMode(QFileDialog::AcceptSave);
file_dialog.setNameFilter( ("Text files (*.txt )") );
file_dialog.selectFile( str );
int ret = file_dialog.exec();
return ret ;
}