Kivy中标签面板内的小部件

时间:2017-06-01 01:34:04

标签: python python-3.x kivy kivy-language

我在kivy设计时很新,我试图在Tab面板中显示listview,inputbox和label,但它显示的是空面板。我不确定我的错误在哪里。 我想通过在输入框中输入用户名来对用户进行简单搜索,然后listview将自动更新列表视图中的记录。

我使用的是kivy 1.10.0和python 3.6

这是我在kivy文件中的代码:

<AdminMainScreen@Screen>:#===================MAIN SCREEN=========================
txt_search: txt_search
view_user_list: view_user_list

BoxLayout:
    size_hint_y: 1
    size_hint_x: 1

    canvas:
        Color:
            rgb: .132, .232, .249
        Rectangle:
            size: self.size

    TabbedPanel:
        do_default_tab: False

        TabbedPanelItem:
            text:"1st Tab"
            Label:
                text: "Content of Admin Panel"

        TabbedPanelItem:
            text:"2nd Tab"
            Label:
                text: "Content of Second Panel"

        TabbedPanelItem:
            text:"Manage Users"
            BoxLayout:
                size_hint_y: .2
                size_hint_x: 1
                orientation: 'horizontal'

                Label:
                    text: "Search User"
                    size_hint_x: .25
                    spacing: .2, .2

                TextInput:
                    id: txt_search
                    text: ""
                    size_hint_x: .3
                    spacing: .2, .2
            Label:
                id: lbl_search
                size_hint_y:None
                height: 10
                text: ""

            ListView:
                color: [0,0,0]
                id: view_user_list
                size_hint_x: 1
                size_hint_y: .8
                item_strings: []
                adapters:
                    ListAdapter(data=[], cls = ListItemButton)

1 个答案:

答案 0 :(得分:0)

我不认为允许在TabbedPanelItem中使用多个小部件,只有一个小孩 - content。因此,只需在一个布局中的选项卡中添加一个额外的布局和所需的一切:

BoxLayout: # The only child of panel item
    size_hint_y: 1
    size_hint_x: 1
    orientation: 'horizontal'

    BoxLayout:
        size_hint_y: 0.2
        size_hint_x: 1
        orientation: 'horizontal'

        Label:
            text: "Search User"
            size_hint_x: .25
            spacing: .2, .2

        TextInput:
            id: txt_searh
            text: ""
            size_hint_x: .3
            spacing: .2, .2
    Label:
        id: lbl_search
        size_hint_y:None
              ...