[英]QDesktopServices::openUrl() cannot open directory in MAC Finder
我希望應用程序在MAC的查找器中打開目錄,但是它不起作用。
它僅適用於Windows,不適用於MAC。 有什么辦法嗎?
更新:
正如@Mohammad Kanan建議的那樣,使用以下語法:
QDesktopServices :: openUrl(QUrl(“ file:/// your_folder”,QUrl :: TolerantMode));
它正在工作,例如:
QString workingDir = qApp->applicationDirPath();
QString path = QString::fromLatin1("file://%1").arg(workingDir);
QDesktopServices::openUrl(QUrl(path, QUrl::TolerantMode));
PS。 您也可以在其上添加相對路徑,但要注意..和/中的字符串:
QString workingDir = qApp->applicationDirPath();
workingDir += "/../../../";
QString path = QString::fromLatin1("file://%1").arg(workingDir);
QDesktopServices::openUrl(QUrl(path, QUrl::TolerantMode));
Windows和MAC上的正確語法:
打開一個文件:
QDesktopServices::openUrl(QUrl("file:///Users/myname/myfile"));
瀏覽具有相同語法的文件夾:
QDesktopServices::openUrl(QUrl("file:///Users/myname/"));
注意,如果文件系統位於包含空格的路徑中:
QDesktopServices::openUrl(QUrl("file:///C:/Documents and Settings/All Users/Desktop", QUrl::TolerantMode));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.