让 Kivy 最终在 Eclipse 中工作,编译然后错误:CRITICAL Application No window is created.Terminating application run
Posted
技术标签:
【中文标题】让 Kivy 最终在 Eclipse 中工作,编译然后错误:CRITICAL Application No window is created.Terminating application run【英文标题】:Got Kivy to finally work in Eclipse, compiles then error: CRITICAL Application No window is created.Terminating application run 【发布时间】:2015-11-25 17:36:03 【问题描述】:就像我提到的,我终于让 Kivy 在 Eclipse Pydev for Windows 7 中编译而没有任何错误。当我运行该文件时,我收到了该错误,当然没有弹出窗口。有谁知道为什么以及如何解决这个错误?
main.py
import kivy
kivy.require('1.9.0') # @UndefinedVariable
from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
from kivy.lang import Builder
presentation = Builder.load_file("test.kv")
class StartScreen(FloatLayout):
pass
class TestApp(App):
def build(self):
return presentation
if __name__=='__main__':
TestApp().run()
test.kv #:kivy 1.9
<StartScreen>:
orientation: 'vertical'
canvas:
Color:
rgba: 1,0,1,1
Rectangle:
source: 'kivy/graphics/blu.png'
FloatLayout:
我确认 pygame 已安装并且我能够毫无错误地导入它。我安装了 Cython,它是 Kivy 的依赖项。升级后出现新错误。似乎相同的错误但不同:
[INFO ] [Logger ] Record log in C:\Users\qzfyrp\.kivy\logs\kivy_15-08-31_29.txt
[INFO ] [Kivy ] v1.9.0
[INFO ] [Python ] v3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)]
[INFO ] [Factory ] 173 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_gif, img_pil (img_sdl2, img_ffpyplayer ignored)
[CRITICAL ] [Window ] Unable to find any valuable Window provider at all!
sdl2 - ImportError: DLL load failed: The specified module could not be found.
File "C:\Kivy\kivy34\kivy\core\__init__.py", line 57, in core_select_lib
fromlist=[modulename], level=0)
File "C:\Kivy\kivy34\kivy\core\window\window_sdl2.py", line 26, in <module>
from kivy.core.window._window_sdl2 import _WindowSDL2Storage
[CRITICAL ] [App ] Unable to get a Window, abort.
编辑:好的。起初,当我开始这个时,当我通过 kivy.bat 运行它时,我至少能够出现一个屏幕。不,当我尝试通过 kivy.bat 运行它时,我得到了与 Eclipse 中相同的错误。
【问题讨论】:
【参考方案1】:我在 LiClipse 中遇到了同样的错误,并按照 Kivy, Eclipse and PyDev (also PyPy) 上一篇文章中的说明解决了它。
只需打开 Window -> Preferences,在树中导航到 PyDev -> Interpreters -> Python Interpreter 转到标志 Environment 并将您的 SDL2 目录添加到 Variable PATH。
【讨论】:
以上是关于让 Kivy 最终在 Eclipse 中工作,编译然后错误:CRITICAL Application No window is created.Terminating application run的主要内容,如果未能解决你的问题,请参考以下文章
Kivy:为啥 ScrollView 不能在 GridLayout 中工作?