16

我有以下内容:

QProcess *process = new QProcess(this);
QString path = QDir::toNativeSeparators(QApplication::applicationPath);
#if defined(Q_OS_WIN)

process->start("explorer.exe",  QStringList() << path);

#elif defined(Q_OS_MAC)

process->start("open", QStringList() << path);

#endif

对于 Ubuntu,我如何实现相同的行为?

4

1 回答 1

39

使用QDesktopServices及其 openUrl 函数:

QString path = QDir::toNativeSeparators(QApplication::applicationDirPath());
QDesktopServices::openUrl(QUrl::fromLocalFile(path));

它应该适用于所有操作系统。我只在 Windows 中测试过它。

于 2010-08-25T20:28:02.053 回答