Ошибка Kivy: [КРИТИЧЕСКИЙ] [Приложение] Невозможно получить окно, отмена - PullRequest
0 голосов
/ 21 февраля 2019

Все решения, которые появляются для этой ошибки Kivy, не работают для меня.Прошло уже более 2 недель, но все мои усилия напрасны.Я использую python 3.6.4, kivy 1.10.1, pycharm в качестве моей IDE и Windows 10. Вот код ошибки и сам код:

Код:

from kivy.core.window import Window
import os
os.environ['KIVY_GL_BACKEND'] = 'angel_sdl2'
from kivy.app import App
from kivy.uix.button import Button

# from kivy import Config
# Config.set('graphics', 'multisamples', '0')

class MyApp(App):
  def build(self):
     return Button(text='Hello world')


if __name__ == '__main__':
   MyApp().run()

Ошибка:

enter code here"C:\Program Files\Python36-32\python.exe" 
"C:/Users/Sabinus O Ofoleta/Desktop/python/tested.py"
[INFO   ] [Logger      ] Record log in C:\Users\Sabinus O    Ofoleta\.kivy\logs\kivy_19-02-21_4.txt
[INFO   ] [Kivy        ] v1.10.1
 [INFO   ] [Python      ] v3.6.7 (v3.6.7:6ec5cf24b7, Oct      20 2018, 12:45:02) [MSC v.1900 32 bit (Intel)]
 [INFO   ] [Factory     ] 194 symbols loaded
 [INFO   ] [Image       ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
 [INFO   ] [Text        ] Provider: sdl2
 [INFO   ] [Window      ] Provider: sdl2
 [INFO   ] [Window      ] Activate GLES2/ANGLE context
 [CRITICAL] [Window      ] Unable to find any valuable  Window provider.
 sdl2 - RuntimeError: b'Could not initialize EGL'
 File "C:\Program Files\Python36-32\Lib\site-packages   \kivy\core\__init__.py", line 67, in core_select_lib
  cls = cls()
 File "C:\Program Files\Python36-32\Lib\site-packages \kivy\core\window\window_sdl2.py", line 140, in __init__
super(WindowSDL, self).__init__()
 File "C:\Program Files\Python36-32\Lib\site-packages\kivy\core\window\__init__.py", line 968, in __init__
self.create_window()
 File "C:\Program Files\Python36-32\Lib\site-packages\kivy\core\window\window_sdl2.py", line 272, in create_window
self.fullscreen,resizable , state)
 File "kivy\core\window\_window_sdl2.pyx", line 209, in kivy.core.window._window_sdl2._WindowSDL2Storage.setup_window
 File "kivy\core\window\_window_sdl2.pyx", line 66, in kivy.core.window._window_sdl2._WindowSDL2Storage.die

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

 Process finished with exit code 1

Мой компьютер использует opengl 1.1, потому что другие версии не совместимы, поэтому я решил использовать 'angel_sdl2'.Спасибо

Ответы [ 3 ]

0 голосов
/ 15 июня 2019

Я нашел решение этой проблемы;Скопируйте все файлы в C:\Python27\share\sdl2\bin или по любому пути к папке sdl2.Вставьте эти файлы в папки System32 и SysWOW64.

0 голосов
/ 08 августа 2019

Та же проблема на ноутбуке с Intel GMA 965 и Win10

Причина: графический драйвер устарел, новых версий нет.

Решение ( у меня сработало ):

1) Применить инструмент по pal1000 https://github.com/pal1000/save-legacy-intel-graphics

(подробнее: https://community.khronos.org/t/i-have-opengl-3-1-but-kivy-says-that-i-have-only-1-1/103980/6)

2) Установить зависимости, например

python -m pip install --ignore-installed kivy.deps.sdl2 kivy.deps.glew

(и установите системную переменную "KIVY_GL_BACKEND" на "glew", или не устанавливайте - это значение по умолчанию; кстати, установка kivy.deps.angle и установка "angle_sdl2" не помогают мне в этомcase)

3) Добавьте это перед кодом Python:

from kivy import Config
Config.set('graphics', 'multisamples', '0')

(из Kivy не обнаруживает OpenGL 2.0 )

0 голосов
/ 23 февраля 2019

Мне трудно поверить, что на компьютере, который может работать под управлением Windows 10, не могут работать более поздние версии opengl, чем 1.1, которой более 20 лет, а самому OpenGL ES 2.0 более 10 лет.Более вероятно, что у вас не установлены драйверы для вашего графического процессора.Даже для использования angle_sdl2 вам нужно, чтобы DirectX 11 работал, так как angle - это просто реализация OpenGL поверх него.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...