2 回答

TA貢獻1851條經驗 獲得超5個贊
Qt 跨平臺解決方案是使用QDesktopServices::openUrl()
:
import os
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
app = QtWidgets.QApplication(sys.argv)
path = "C:/Users"
fullpath = os.path.realpath(path)
if not QtGui.QDesktopServices.openUrl(QtCore.QUrl.fromLocalFile(fullpath)):
? ? print("failed")

TA貢獻1862條經驗 獲得超7個贊
我設法使用 QProcess 在特定路徑上打開資源管理器,而無需附加模塊(例如網絡瀏覽器)。我只需要平臺模塊來確定程序正在運行哪個平臺,就像這樣
self.path = os.path.abspath(os.path.dirname(sys.argv[0]))
self.pathOutput = os.path.join(self.path, "output")
def open_explorer(self):
self._process = QtCore.QProcess(self)
if platform.system() == "Windows":
self._process.start("explorer",[os.path.realpath(self.pathOutput)])
elif platform.system() == "Darwin":
self._process.start("open",[os.path.realpath(self.pathOutput)])
添加回答
舉報