我想将应用程序的屏幕截图保存到桌面。问题是,它可以节省,但如果我采取另一个截图,它将取代旧图像。我如何告诉Qt将其称为愿望清单1,愿望清单2等?
QString filepath = QDir::toNativeSeparators( QDir::homePath() + "/Desktop/Wishlist.png" );
if( grab().save( filepath, "png" ) )
statusBar()->showMessage( tr("Saved file to Desktop.") );
else
statusBar()->showMessage( tr("Error saving file.") );
关闭并重新启动程序后,它应该可以继续。例如。 愿望清单1 ,愿望清单2 然后重启,然后它应该命名下一个截图 Wishlist 3 。
答案 0 :(得分:2)
创建一个解析文件名的函数。以下代码段不安全(如果没有太大的话会怎样),对于no == 0,您需要一个特殊情况。
int no = 0;
while( true ){
QString path = filename + "." + QString::number( no ) + "." + extention;
QFileInfo fileInfo( path );
if( !fileInfo.exists() )
return path;
no++
}