我想给按钮添加一个复选框

i want to add a checkbox to buttons

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
from kivy.uix.checkbox import CheckBox


class Ckbox(BoxLayout):
    orientation = "vertical"
    cc =[]
    def __init__(self):
        super().__init__()
        for i in range(5):
            self.bb = Button()
            self.cq = CheckBox()
            self.cc.append(self.cq)
            self.add_widget(self.bb)
           self.add_widget(self.cq)

class Ckboxapp(App):
    def build(self):
        return Ckbox()
Ckboxapp().run()

从上面的代码,我得到这个

但我希望复选框和按钮在一起,所以我将按钮变量添加到添加小部件中作为 self.bb.add_widget(self.cq) 并得到了这个

第二张图片显示了附加到按钮的复选框,但只显示在最后一个按钮上。我希望它像第二个 iamge 一样,但我希望它出现在所有按钮上。我能做什么?

如果你把每个 CheckBox/Button 对放在另一个 BoxLayout 中,我想你会得到你想要的。试试这个:

class Ckbox(BoxLayout):
    orientation = "vertical"
    def __init__(self):
        super().__init__()
        for i in range(5):
            bl = BoxLayout()
            bb = Button(text='Button ' + str(i), size_hint_x=0.85)
            cq = CheckBox(size_hint_x=0.15)
            bl.add_widget(cq)
            bl.add_widget(bb)
            self.add_widget(bl)