我有一个基本上是PySide的自定义版本,用于创建绘图应用程序。 文件夹结构如下:
Juji/
Images/
juji/
Tests/
内部“juji”文件夹包含包的位置。“Images”文件夹包含在包中使用并相对引用的图标,例如:
QtGui.QAction(QtGui.QIcon('Images/chart_edit.png'), 'Plot', self)
当我在“Tests”文件夹中创建一个示例UI脚本并导入juji时,一切正常,图标也会显示出来。你知道吗
如果我创建了一个外部项目并尝试将“juji”导入其中,GUI会显示出来,但是没有图标图片显示出来。你知道吗
我试过将“Images”文件夹移到“juji”文件夹中,但没有用。你知道吗
没有一个图标是在包的外部显式使用的——当然,我的外部项目相对于它在哪里并不重要?(我把它加到Python身上了)。你知道吗
有什么想法吗?你知道吗
我做了一个有点笨拙的修正:
我将“Images”移到juji中并创建了一个
guidata.py
文件。你知道吗在
guidata
中,我从__file__
属性获取绝对路径,删除文件名并附加“Images”文件夹。你知道吗然后我可以将
guidata
导入包中的每个模块,并使用绝对路径获取图标文件。这似乎适用于任何其他外部项目。你知道吗不过,这有点像黑客。一个工作的相对文件路径会更整洁,但我似乎无法让它工作。你知道吗
相关问题 更多 >
编程相关推荐