#python #kivy
#питон #киви
Вопрос:
Я изучаю киви. ошибки киви вызывают у меня сильное разочарование. Я посетил все страницы github и stack overflow, включая kivy.readthedocs.io и повиновался каждому предложению….
что у меня есть:
kivy 1.11.1 (каким-то образом удалось установить его с неофициального веб-сайта двоичных файлов), python 3.9.1, последняя версия сообщества pycharm,
Мой код:
import kivy
kivy.require('1.9.1')
from kivy.properties import NumericProperty
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.slider import Slider
from kivy.uix.gridlayout import GridLayout
class WidgetContainer(GridLayout):
def __init__(self,**kwargs):
super(WidgetContainer,self).__init__(**kwargs)
self.cols=4
self.add_widget(Label(text="volume"))
self.volumeControl=Slider(max=100,min=0)
self.add_widget(self.volumeControl)
self.volumeValue=Label(text="0")
self.add_widget(self.volumeValue)
self.volumeControl.bind(value=self.on_press)
def on_press(self,instance,volume):
self.volumeValue.text=str(volume)
class SliderThingy(App):
def build(self):
widgets=WidgetContainer()
return widgets
root=SliderThingy()
root.run()
на выходе:
[INFO ] [Kivy ] v1.11.1
[INFO ] [Kivy ] Installed at "C:UsersUSERAppDataRoamingPythonPython39site-packageskivy__init__.py"
[INFO ] [Python ] v3.9.0 (tags/v3.9.0:9cf6752, Oct 5 2020, 15:34:40) [MSC v.1927 64 bit (AMD64)]
[INFO ] [Python ] Interpreter at "C:Program FilesPython39python.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 while importing _window_sdl2: The specified module could not be found.
File "C:UsersUSERAppDataRoamingPythonPython39site-packageskivycore__init__.py", line 59, in core_select_lib
mod = __import__(name='{2}.{0}.{1}'.format(
File "C:UsersUSERAppDataRoamingPythonPython39site-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
что я пробовал:
установка пакетов из pycharm, установка пакетов из venv, запуск моего кода из venv.
Все это продолжает давать мне одни и те же ошибки…..
Рабочий ответ будет высоко оценен
Комментарии:
1. Kivy 1.11.1, вероятно, несовместим с Python 3.9, попробуйте вместо этого Kivy 2.0.0.rc4 (и установите с помощью pip)
2. Или попробуйте Python 3.7
3. вы, должно быть, отвечаете по своему опыту, спасибо. Но в конечном итоге это сработало, когда я удалил и переустановил соответствующую версию kivy-deps.gstreamer, используя
pip install -Iv kivy_deps.gstreamer==.....
остальные, которые я не помню (;-;) …4. но как мне поддержать ваши комментарии на моем компьютере -_-