如何在 Kivy 中创建无边框 window?
How do I create a borderless window in Kivy?
我正在使用 Kivy 构建一个 python 桌面应用程序,并想了解如何创建无边框 window 类似于 EVE Online 的做法:EVE Online launch screen。
这就是我现在所处的位置,以及我下一步想要实现的目标:What I want to accomplish
我花了几个小时在谷歌上搜索解决方案,但我最接近的是这些链接:How can I hide the main window titlebar and place a transparent background in kivy framework?, and this: Borderless windows in wxPython
这是当前代码(Python 2.7,Kivy 1.9):
from kivy.app import App
from kivy.uix.button import Button
from kivy.config import Config
Config.set('graphics', 'width', '480')
Config.set('graphics', 'height', '320')
Config.set('graphics', 'borderless', '1')
class MyApp(App):
def build(self):
button = Button(text="Exit", size_hint=(None, None))
button.bind(on_press=exit)
return button
if __name__ == '__main__':
MyApp().run()
我想看看这是否可以在 Kivy 中完成。您能否建议一些解决此问题的方法?谢谢!
您可以使用小部件 BoxLayout 并配置设置,使其按您希望的方式显示。我是 Kivy 的新手,但这些视频解释得很好:
https://m.youtube.com/watch?v=-NvpKDReKyg 希望这对您有所帮助!
您可以添加 Config.set ('graphics', 'resizable', '0') 以删除 window 的剩余边框部分。缺点是 window 不再可拖动并停留在固定位置。
要创建无边框 window,请将 Windows.borderless 属性 设置为 true
from kivy.core.window import Window
Window.size = (500, 300)
Window.borderless = True
请务必提供退出程序的替代方法,因为您将无法单击通常由 OS 提供的 window 关闭按钮。
我正在使用 Kivy 构建一个 python 桌面应用程序,并想了解如何创建无边框 window 类似于 EVE Online 的做法:EVE Online launch screen。
这就是我现在所处的位置,以及我下一步想要实现的目标:What I want to accomplish
我花了几个小时在谷歌上搜索解决方案,但我最接近的是这些链接:How can I hide the main window titlebar and place a transparent background in kivy framework?, and this: Borderless windows in wxPython
这是当前代码(Python 2.7,Kivy 1.9):
from kivy.app import App
from kivy.uix.button import Button
from kivy.config import Config
Config.set('graphics', 'width', '480')
Config.set('graphics', 'height', '320')
Config.set('graphics', 'borderless', '1')
class MyApp(App):
def build(self):
button = Button(text="Exit", size_hint=(None, None))
button.bind(on_press=exit)
return button
if __name__ == '__main__':
MyApp().run()
我想看看这是否可以在 Kivy 中完成。您能否建议一些解决此问题的方法?谢谢!
您可以使用小部件 BoxLayout 并配置设置,使其按您希望的方式显示。我是 Kivy 的新手,但这些视频解释得很好: https://m.youtube.com/watch?v=-NvpKDReKyg 希望这对您有所帮助!
您可以添加 Config.set ('graphics', 'resizable', '0') 以删除 window 的剩余边框部分。缺点是 window 不再可拖动并停留在固定位置。
要创建无边框 window,请将 Windows.borderless 属性 设置为 true
from kivy.core.window import Window
Window.size = (500, 300)
Window.borderless = True
请务必提供退出程序的替代方法,因为您将无法单击通常由 OS 提供的 window 关闭按钮。