无法使用 Kivy 获取窗口或文本提供程序

Posted

技术标签:

【中文标题】无法使用 Kivy 获取窗口或文本提供程序【英文标题】:Unable to get Window or Text Provider with Kivy 【发布时间】:2020-08-30 14:11:22 【问题描述】:

我对编码和 Kivy 业务非常陌生。我为我的无知道歉。作为序言,我认为我的 PATH 有问题。有时,在我使用 pip 安装模块后,模块将永远无法识别,所以这可能是问题所在。最近,我从 Sublime Text 过渡到 Visual Studio 2019。我尝试了互联网上提供的所有教程。我相信问题出在我身上,我不明白我在做什么。附上我尝试过的所有建议:

https://github.com/kivy/kivy/issues/5677

sdl2 - ImportError: DLL load failed: The specified module could not be found and [CRITICAL] [App] Unable to get a Window, abort

Kivy error, [CRITICAL] [Text ] unable to find any valuable text provider (python 3.6.1) (windows 10)

https://www.youtube.com/watch?v=gt-qndBYrCQ&feature=youtu.be

ImportError: No module named PIL

我现在已经卸载和安装了 Kivy 4 或 5 次,并且使用了所有这些不同的配置。如果我发送任何依赖项以供下载,我保证它会告诉我它已经满足。

这是程序:

import kivy

from kivy.app import App
from kivy.uix.label import Label

class FirstKivy(App):
    def build(self):
        return Label(text="Hello World")

if __name__ == '__main__':
    FirstKivy().run()
[INFO   ] [Logger      ] Record log in C:\Users\wlade\.kivy\logs\kivy_20-05-14_38.txt
[INFO   ] [deps        ] Successfully imported "kivy_deps.gstreamer" 0.2.0
[INFO   ] [deps        ] Successfully imported "kivy_deps.angle" 0.2.0
[INFO   ] [deps        ] Successfully imported "kivy_deps.glew" 0.2.0
[INFO   ] [deps        ] Successfully imported "kivy_deps.sdl2" 0.2.0
[INFO   ] [Kivy        ] v1.11.1
[INFO   ] [Kivy        ] Installed at "C:\Users\wlade\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\Python37\site-packages\kivy\__init__.py"
[INFO   ] [Python      ] v3.7.7 (tags/v3.7.7:d7c567b08f, Mar 10 2020, 11:52:54) [MSC v.1900 64 bit (AMD64)]
[INFO   ] [Python      ] Interpreter at "C:\Users\wlade\AppData\Local\Microsoft\WindowsApps\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\python.exe"
[INFO   ] [Factory     ] 184 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_pil, img_gif (img_sdl2, img_ffpyplayer ignored)
[INFO   ] [Text        ] Provider: pil(['text_sdl2'] ignored)
[CRITICAL] [Window      ] Unable to find any valuable Window provider. Please enable debug logging (e.g. add -d if running from the command line, or change the log level in the config) and re-run your app to identify potential causes
sdl2 - ImportError: DLL load failed: The specified module could not be found.
  File "C:\Users\wlade\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\Python37\site-packages\kivy\core\__init__.py", line 63, in core_select_lib
    fromlist=[modulename], level=0)
  File "C:\Users\wlade\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\Python37\site-packages\kivy\core\window\window_sdl2.py", line 27, in <module>
    from kivy.core.window._window_sdl2 import _WindowSDL2Storage

[CRITICAL] [App         ] Unable to get a Window, abort.

这是 Visual Studio 给我的错误


  Message=1
  Source=C:\Users\wlade\source\repos\PythonApplication1\PythonApplication1\PythonApplication1.py
  StackTrace:
  File "C:\Users\wlade\source\repos\PythonApplication1\PythonApplication1\PythonApplication1.py", line 8, in build
    return Label(text="Hello World")
  File "C:\Users\wlade\source\repos\PythonApplication1\PythonApplication1\PythonApplication1.py", line 11, in <module>
    FirstKivy().run()

感谢您的耐心等待:)

【问题讨论】:

【参考方案1】:

我的项目中有同样的问题,但我解决了。 然后我在我的项目中安装了[kivy-deps.sdl2][kivy-deps.glew] 包 它开始运行。 我使用 PyCharm 作为开发工具,我安装了以下程序:

    转到[Settings]

    选择[Project][Project Iterpreter]

    使用+ kivy添加安装包运行:[Kivy],[kivy-deps.sdl2][kivy-deps.glew]

【讨论】:

啊,我明白了,谢谢!看起来 Kivy 与 Pycharm 和 Conda 更合作。我想我会卸载所有与 Python 和 Kivy 相关的东西,然后重新开始。如果您的模块总是放错地方,肯定会推荐。

以上是关于无法使用 Kivy 获取窗口或文本提供程序的主要内容,如果未能解决你的问题,请参考以下文章

pyinstaller kivy 错误无法获取任何图像提供程序,中止

Kivy 错误,[CRITICAL] [Text] 无法找到任何有价值的文本提供程序(python 3.6.1)(windows 10)

带有 Kivy 错误的 Pycharm [CRITICAL] [App] 无法获取窗口,中止

Kivy 错误:[CRITICAL] [App] 无法获取窗口,中止

无法从使用 PyInstaller 构建的 Kivy 应用程序中获取 lexers.PythonLexer()

如何使用 Kivy 获取文本输入的值