Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Kivy嵌套选项卡面板_Python_User Interface_Tabs_Kivy_Kivy Language - Fatal编程技术网

Python Kivy嵌套选项卡面板

Python Kivy嵌套选项卡面板,python,user-interface,tabs,kivy,kivy-language,Python,User Interface,Tabs,Kivy,Kivy Language,我正在学习克维语和克维语。目前,我正在尝试用两个嵌套的选项卡面板构建一个小界面 在一级三个选项卡上,在一级的第一个选项卡内,我尝试放置一组新的三个选项卡 为此,我的Python代码是: # question_one from kivy.uix.tabbedpanel import TabbedPanel from kivy.app import App class Q(TabbedPanel): pass class QuestionOneApp(App): def bu

我正在学习克维语和克维语。目前,我正在尝试用两个嵌套的选项卡面板构建一个小界面

在一级三个选项卡上,在一级的第一个选项卡内,我尝试放置一组新的三个选项卡

为此,我的Python代码是:

# question_one
from kivy.uix.tabbedpanel import TabbedPanel
from kivy.app import App


class Q(TabbedPanel):
    pass


class QuestionOneApp(App):
    def build(self):
        return Q()


if __name__ == '__main__':
    QuestionOneApp().run()
我的Kivy语言代码是:

# file name questionone.kv
#:import hex kivy.utils.get_color_from_hex


<RegularInterfaceLabel@Label>:

<RegularInterfaceTextInput@TextInput>:
    multiline: False

<MyGridLayout@GridLayout>:
    rows: 1
    cols: 1
    spacing: 5


<Q>:
    do_default_tab: False
    tab_width: 200
    TabbedPanelItem:
        text: "First Level Tab A1"
        do_default_tab: False
        tab_width: 200

        TabbedPanelItem:
            text: "Second level Tab B1"
            MyGridLayout
                RegularInterfaceLabel:
                    text: "Second level Tab B1 is working"

        TabbedPanelItem:
            text: "Second level Tab B2"
            MyGridLayout
                RegularInterfaceLabel:
                    text: "Second level Tab B2 is working"

        TabbedPanelItem:
            text: "Second level Tab B3"
            MyGridLayout
                RegularInterfaceLabel:
                    text: "Second level Tab B3 is working but not as i want"

    TabbedPanelItem:
        text: "First Level Tab A2"
        MyGridLayout
            RegularInterfaceLabel:
                text: "First Level Tab A2 is working"

    TabbedPanelItem:
        text: "First Level Tab A3"
        MyGridLayout
            RegularInterfaceLabel:
                text: "First Level Tab A3 is working"
#文件名questionone.kv
#:导入hex kivy.utils.get\u color\u从\u hex
:
:
多行:False
:
行数:1
科尔斯:1
间距:5
:
do_default_选项卡:False
标签宽度:200
选项卡式面板项目:
文本:“第一级选项卡A1”
do_default_选项卡:False
标签宽度:200
选项卡式面板项目:
文本:“第二级选项卡B1”
MyGridLayout
标签:
文本:“第二级选项卡B1正在工作”
选项卡式面板项目:
文本:“第二级选项卡B2”
MyGridLayout
标签:
文本:“第二级选项卡B2正在工作”
选项卡式面板项目:
文本:“第二级选项卡B3”
MyGridLayout
标签:
文本:“第二级选项卡B3正在工作,但不是我想要的”
选项卡式面板项目:
文本:“第一级选项卡A2”
MyGridLayout
标签:
文本:“第一级选项卡A2正在工作”
选项卡式面板项目:
文本:“第一级选项卡A3”
MyGridLayout
标签:
文本:“第一级选项卡A3正在工作”

为什么此代码不起作用?

您需要嵌套另一个选项卡面板。
像这样:

<Q>:
    do_default_tab: False
    tab_width: 200
    TabbedPanelItem:
        text: "First Level Tab A1"
        do_default_tab: False
        tab_width: 200

        TabbedPanel:    
            TabbedPanelItem:
                text: "Second level Tab B1"
                MyGridLayout
                    RegularInterfaceLabel:
                        text: "Second level Tab B1 is working"
:
do_default_选项卡:False
标签宽度:200
选项卡式面板项目:
文本:“第一级选项卡A1”
do_default_选项卡:False
标签宽度:200
选项卡面板:
选项卡式面板项目:
文本:“第二级选项卡B1”
MyGridLayout
标签:
文本:“第二级选项卡B1正在工作”