#python #kivy
Вопрос:
У меня была та же ошибка при запуске любого кода kivy, который я вводил в IntelliJ. Я использую kivy 2.0.0 и Python 3.9. Вот мой код:
import kivy
kivy.require("2.0.0")
from kivy.app import App
from kivy.uix.button import Button
print(kivy.__version__)
class ButtonApp(App):
def build(self):
# use a (r, g, b, a) tuple
btn = Button(text="Push Me !",
font_size="20sp",
background_color=(1, 1, 1, 1),
color=(1, 1, 1, 1),
size=(32, 32),
size_hint=(.2, .2),
pos=(300, 250))
btn.bind(on_press=self.callback)
return btn
def callback(self, event):
print("button pressed")
print('Yoooo !!!!!!!!!!!')
root = ButtonApp()
root.run()
Я перепробовал множество решений, включая: переустановку kivy, добавление в path, и я установил все зависимости.
Вот сообщение об ошибке:
[INFO ] [Logger ] Record log in C:UsersJames.kivylogskivy_21-10-25_21.txt
[INFO ] [deps ] Successfully imported "kivy_deps.gstreamer" 0.3.2
[INFO ] [deps ] Successfully imported "kivy_deps.angle" 0.3.0
[INFO ] [deps ] Successfully imported "kivy_deps.glew" 0.3.0
[INFO ] [deps ] Successfully imported "kivy_deps.sdl2" 0.3.1
[INFO ] [Kivy ] v2.0.0
[INFO ] [Kivy ] Installed at "C:UsersjamesAppDataLocalProgramsPythonPython39libsite-packageskivy__init__.py"
[INFO ] [Python ] v3.9.5 (tags/v3.9.5:0a7dcbd, May 3 2021, 17:27:52) [MSC v.1928 64 bit (AMD64)]
[INFO ] [Python ] Interpreter at "C:UsersjamesIdeaProjectsHelloWorldvenvScriptspython.exe"
[INFO ] [Logger ] Purge log fired. Analysing...
[INFO ] [Logger ] Purge 9 log files
[INFO ] [Logger ] Purge finished!
[INFO ] [Factory ] 186 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_pil (img_sdl2, img_ffpyplayer ignored)
[INFO ] [Text ] Provider: pil(['text_sdl2'] ignored)
2.0.0
[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 while importing _window_sdl2: The specified module could not be found.
File "C:UsersjamesAppDataLocalProgramsPythonPython39libsite-packageskivycore__init__.py", line 58, in core_select_lib
mod = __import__(name='{2}.{0}.{1}'.format(
File "C:UsersjamesAppDataLocalProgramsPythonPython39libsite-packageskivycorewindowwindow_sdl2.py", line 27, in <module>
from kivy.core.window._window_sdl2 import _WindowSDL2Storage
[CRITICAL] [App ] Unable to get a Window, abort.
Process finished with exit code 1
Ответ №1:
Решение этой проблемы заключается в удалении kivy
и переустановке новейшей версии с master:
python3 -m pip uninstall kivy
python3 -m pip install "kivy[base] @ https://github.com/kivy/kivy/archive/master.zip"
Комментарии:
1. Спасибо за вашу помощь, я сделал это в командной строке и без разницы, я также попробовал это в терминале IntelliJ, но без разницы.
2. Странно, но это работает для многих людей, включая меня
3. Я просто помню, что мне нужно было сделать, чтобы это сработало. Попробуйте переустановить Python и выполнить команды, которые я предоставил выше, в cmd/powershell/терминале с разрешением администратора
4. большое вам спасибо, я заставила его работать
5. Ниже приведен код, который я использовал: