我正在使用
QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.DataLocation)
我的跨平台程序获取应用程序文件夹。在Windows上运行良好,但在Linux(Ubuntu)上,当前文件名附加到路径,例如。
/home/mustermann/.local/share/data//my_program.py
我只是想知道这是否是“正常”行为,我必须提取路径或出错。
在设置应用名称和组织后编辑,代码:
app = QtGui.QApplication(sys.argv)
app.setOrganizationName("Snowformtics")
app.setOrganizationDomain("Snowformtics.net")
app.setApplicationName("LabtoolsQt")
QtGui.QApplication.setStyle(QtGui.QStyleFactory.create("plastique"))
QtGui.QApplication.setPalette(QtGui.QApplication.style().standardPalette())
my_app = MyMainWindow()
my_app.show()
sys.exit(app.exec_())
答案 0 :(得分:1)
使用QStandardPaths::writableLocation()并尝试设置组织和应用名称。
C ++版本:
QApplication app(argc, argv);
app.setOrganizationName("Company Corp.");
app.setOrganizationDomain("company.net");
app.setApplicationName("FancyApp");
qDebug() << QStandardPaths::writableLocation(QStandardPaths::DataLocation);
打印
"/home/me/.local/share/Company Corp./FancyApp"