GtkWARNING:无法在模块路径“wimp”中找到主题引擎

2024-09-30 22:19:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我开发了一个在Windows上运行的Gtk应用程序。 我使用pyInstaller构建一个exe文件。 如果不是没有加载的主题,一切都会好起来的。在

所以,我有我的规范文件:

# -*- mode: python -*-

directory = 'C:\\my_project'

a = Analysis(['main.py'],
             pathex=[directory],
             hiddenimports=None,
             hookspath=None)


more_datas = []
more_binaries = []

more_datas.append(('gtkrc', os.path.join(directory, 'gtkrc'), 'DATA'))
more_binaries.append(('libwimp.dll', os.path.join(directory, 'libwimp.dll'), 'BINARY'))

pyz = PYZ(a.pure)

exe = EXE(pyz,
          a.scripts,
          a.binaries + more_binaries,
          a.zipfiles,
          a.datas + more_datas,
          name='main.exe',
          debug=False,
          strip=None,
          upx=True,
          console=True)

在文件中包含二进制文件,krgti部分包含数据libwimp.dll. 两个文件都在我的应用程序目录中。在

在我的项目python代码中,我有:

^{pr2}$

当我运行应用程序时,会创建一个临时目录(“uMeixxxxxx”),其中包含两个文件。在

但控制台显示消息:

Gtk-WARNING: Unable to locate theme engine in module_path: "wimp"

主题没有加载。 此警告在以下代码调用后出现:

gtk.rc_reparse_all_for_settings(gtk.settings_get_default(), True)

我错过了什么?在


Tags: 文件pathnonetrue应用程序gtk主题main
1条回答
网友
1楼 · 发布于 2024-09-30 22:19:36

我发现我错在哪里了。在

问题是我将主题复制到应用程序的本地目录中。这个libwimp.dll必须在特定目录中创建文件才能在临时文件夹中工作。在

这个提示帮助我解决了:

Add hooks for PyGTK themes

相关问题 更多 >