繁体   English   中英

无法关闭Kivy应用或避免全屏显示

[英]Can't close Kivy app or avoid fullscreen

我是Kivy的新手,正在尝试寻找解决方法。 每当我创建并运行一个应用程序时,它就会以全屏显示,如果不断开电源就无法关闭(我知道这并不理想,但这正是我迫切需要修复它的原因!)。

建议使用的快捷键(Esc,Ctrl + C,Ctrl + Alt + break)无效。 我试图在脚本的开头更改配置设置,如下所示:

from kivy.config import Config
Config.set('graphics', 'fullscreen', 0)
Config.write()

我还尝试过主题的变化-0作为字符串,1作为整数和字符串(并尝试为窗口提供宽度和高度),但是没有明显的变化。 即使这样做确实可行,但鉴于我最终可能希望能够全屏运行,这也不是理想的解决方法!

考虑到每次我尝试更改某些东西时,都必须通过断开电源来重新启动pi,因此玩游戏非常耗时! 有人对我应该如何进行有任何建议吗?

我目前正在使用:
Raspberry Pi 2 Model B已连接到普通电视(许多有问题的人一直在使用触摸屏,但这对我来说不是真的)
Raspbian Jessie,Linux 8
Python 2.7
恐怕我不知道如何检查有关我下载的Kivy模块的详细信息。

我对此很陌生,因此,如果无法提供所有相关信息,我们深表歉意。

我尝试运行的完整代码(不包括上述配置更改):

import kivy  
kivy.require('1.9.2') #may be part of the problem - not 100% sure this is correct 

from kivy.app import App  
from kivy.uix.label import Label  


class MyApp(App):  

    def build(self):  
        return Label(text='Hello world')  


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

作为临时解决方法,您可以执行以下操作:

def build(self):
    button = Button(text = 'Exit', size_hint = (.1, .05),
                    pos_hint = {'x':0, 'y':0})
    button.bind(on_press = self.on_quit)
    self.layout = FloatLayout()
    self.layout.add_widget(button)

    return self.layout

def on_quit(self):
    exit()

这将为您提供一个退出按钮。 对于您的全屏问题很奇怪,您可以提供更多代码吗?

编辑:

你可以试试这个吗?

from kivy.config import Config
Config.set('graphics', 'borderless', 0)
Config.write()

要变通解决此问题,您可以将全屏更改为假,这样kivy可以在Ctrl + C上退出。

from kivy.config import Config
Config.set('graphics', 'fullscreen', 'fake')
Config.write()

另外,尝试在命令行提示符下运行代码。 在运行kivy应用程序时,避免使用raspberry pi的桌面环境。 这将释放pi用于运行kivy的内存。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM