いくつかのこと:
- あなたが唯一のビルド方法を持つことができる第二のビルド方法で
- リターンは、間違ってインデントされ、あなたは常にだけ持つことができます
for
- と同じにする必要があります1つのAppクラスではない
class AccordionApp(App):
とclass KivyGuiApp(App):
ここでは、あなたがあなたのKVに誤り持っ
'''
TabbedPanel
============
Test of the widget TabbedPanel.
'''
from kivy.app import App
from kivy.uix.tabbedpanel import TabbedPanel, TabbedPanelItem
from kivy.lang import Builder
from kivy.uix.checkbox import CheckBox
from kivy.uix.accordion import Accordion, AccordionItem
from kivy.uix.button import Button
from kivy.app import App
Builder.load_string("""
<Test>:
TabbedPanelItem:
text: 'apple'
BoxLayout:
Label:
text: 'Label1'
Label:
text: 'Entry1'
CheckBox:
text: 'CheckBox1'
Button:
text: 'Button1'
""")
class Test(TabbedPanel):
pass
class KivyGuiApp(App):
def build(self):
test = Test()
acc = Accordion()
for x in range(5):
item = AccordionItem(title='Table %d' % x)
item.add_widget(Button(text='apple\n'))
item.add_widget(Button(text='Grape\n'))
item.add_widget(Button(text='Lemon\n'))
acc.add_widget(item)
panel = TabbedPanelItem()
panel.add_widget(acc)
test.add_widget(panel)
return test
if __name__ == '__main__':
KivyGuiApp().run()
からより多くを実装することができるはず、そこから自分のアプリの小型版である: 'Entry'はkivyクラスではありませんが、それは'でなければなりませんTextInput' – FJSevilla