Kivy - 如何在标签中添加多个标签或按钮
Posted
技术标签:
【中文标题】Kivy - 如何在标签中添加多个标签或按钮【英文标题】:Kivy - How to add multiple labels or buttons within a Label 【发布时间】:2020-01-21 04:24:17 【问题描述】:我有这段代码,我想在第二列添加多个按钮而不是唯一的“保存”按钮,但只保留一个标签“TEST”,我在网上搜索但没有找到任何东西
我没有使用 .kv 文件,所有内容都在一个文件中。
import kivy
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.button import Button
from kivy.uix.screenmanager import ScreenManager, Screen
import os
class ConnectPage(GridLayout):
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.cols = 2
self.add_widget(Label(text="TEST"))
self.save = Button(text="Save")
self.add_widget(self.save)
class Epicapp(App):
def build(self):
self.screen_manager = ScreenManager()
self.connect_page = ConnectPage()
screen = Screen(name="Connect")
screen.add_widget(self.connect_page)
self.screen_manager.add_widget(screen)
return self.screen_manager
if __name__ == "__main__":
chat_app = Epicapp()
chat_app.run()
【问题讨论】:
添加更多按钮的障碍是什么? 屏障是什么意思? 【参考方案1】:您需要在右侧创建一个 BoxLayout,方向为“垂直”,并在其上添加按钮。然后,将 BoxLayout 添加到根类
这是它的代码:
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
from kivy.uix.screenmanager import ScreenManager, Screen
import os
class ConnectPage(GridLayout):
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.cols = 2
self.add_widget(Label(text="TEST"))
self.mybox = BoxLayout(orientation='vertical')
self.button1 = Button(text="Load")
self.button2 = Button(text="Cancel")
self.save = Button(text="Save")
self.mybox.add_widget(self.button1)
self.mybox.add_widget(self.button2)
self.mybox.add_widget(self.save)
self.add_widget(self.mybox)
class Epicapp(App):
def build(self):
self.screen_manager = ScreenManager()
self.connect_page = ConnectPage()
screen = Screen(name="Connect")
screen.add_widget(self.connect_page)
self.screen_manager.add_widget(screen)
return self.screen_manager
if __name__ == "__main__":
chat_app = Epicapp()
chat_app.run()
【讨论】:
以上是关于Kivy - 如何在标签中添加多个标签或按钮的主要内容,如果未能解决你的问题,请参考以下文章
如何在 kivy python 中的标签、文本输入和其他小部件中添加标题