树莓派4运行Kivy应用未显示窗口就提前终止问题求助
问题根因
你代码的入口逻辑存在语法错误,未正确调用Kivy App的run方法:
原代码最后一行是:
if __name__ == '__main__': TheMonitorApp().run
这里的run是App类的实例方法,你没有加()执行调用,所以程序完成Kivy基础模块加载后就直接退出,不会启动应用事件循环,也不会触发窗口初始化逻辑,这就是日志只输出到Image模块就终止的原因,和你之前添加的环境变量配置无关。
修复方案
把最后一行改为方法调用形式即可:
if __name__ == '__main__': TheMonitorApp().run()
额外排查建议(修改后仍有问题可参考)
- 确认树莓派已安装SDL2相关依赖,运行以下命令补全依赖:
sudo apt install libsdl2-2.0-0 libsdl2-image-2.0-0 libsdl2-mixer-2.0-0 libsdl2-ttf-2.0-0 - 运行极简示例验证环境完整性:
若能弹出空白窗口则说明Kivy运行环境无异常。python -c "from kivy.app import App; App().run()"
内容的提问来源于stack exchange,提问作者Justin Franecki
相关产品推荐
相关产品推荐

