QT:getOpenFileName 记录文件上次打开路径

	QString fileName;
	QFileDialog dialog(this);

	//fileName = dialog.getOpenFileName(this,QString::fromLocal8Bit("打开文件"),QString::fromLocal8Bit(strSCDFilePath.c_str()) ,"(*.scd);;(*.ssd);;(*.*)");
	std::string IniPath = CFilePath::Instance().GetIniPath();
	QString FilePath = QString::fromStdString(IniPath) + "Setting.ini";
	QSettings setting(FilePath, QSettings::IniFormat);          //为了能记住上次打开的路径
	QString lastPath = setting.value("LastFilePath").toString();
	fileName = dialog.getOpenFileName(this,QString::fromLocal8Bit("打开文件"),lastPath,"(*.scd);;(*.ssd);;(*.*)");
	if (!fileName.isEmpty())
	{
		int i = fileName.lastIndexOf('/');
		QString Path = fileName.left(i);
		QVariant VarPath(Path);
		setting.setValue("LastFilePath", VarPath);
	}
其实若 getOpenFileName 函数 第三个参数 传入的路径为空,则函数会自动打开上次的路径,不需要做这些设置,此处仅为记录 QSettings 的使用方法

猜你喜欢

转载自blog.csdn.net/u012061464/article/details/80563195
今日推荐