前言
在实际应用中,可能会有这样的需求,在软件中的文件树可以通过右键菜单打开windows系统的资源管理器,并在窗口中选中指定的文件,原有的做法是直接通过QDesktopServices::openUrl
来打开资源管理器,但是并不能实现高亮选中文件。
要实现这个功能其实并不难,需要执行终端命令:explorer /select,xxx
,Qt应用可以直接使用QProcess
来执行终端命令。
ok,简单封装接口,以备后续所需。
代码
void openExplorerFile(const QString &path)
{
//打开资源管理器并高亮文件
const QString explorer = "explorer";
QStringList param;
if(!QFileInfo(path).isDir()){
param<<QLatin1String("/select,");
}
param<<QDir::toNativeSeparators(path);
QProcess::startDetached(explorer,param);
}