【问题标题】:Can't close Kivy app or avoid fullscreen无法关闭 Kivy 应用程序或避免全屏
【发布时间】:2016-08-08 19:51:54
【问题描述】:

我是 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()

【问题讨论】:

  • 您使用的是特殊的 rpi 图形后端吗?这会直接吸引到 fbo,因此除了让应用全屏显示之外别无选择,尽管无法退出它会是一个错误。
  • 我不知道 - 我怎么知道?
  • 查看日志输出
  • 我无法检查日志输出,因为应用程序正在全屏运行!

标签: python python-2.7 kivy


【解决方案1】:

作为一种临时解决方法,您可以这样做:

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()

【讨论】:

  • 我已经用代码更新了原始问题。感谢您的帮助 - 我现在肯定会尝试解决方法!
【解决方案2】:

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

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

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

【讨论】:

    猜你喜欢
    • 2014-08-10
    • 2012-01-23
    • 1970-01-01
    • 2014-09-06
    • 2021-01-28
    • 1970-01-01
    • 2011-07-25
    • 2022-01-03
    • 1970-01-01
    相关资源
    最近更新 更多