我怎么知道pagelayout中的页数(kivy,python)

时间:2018-04-24 15:56:04

标签: python kivy

我如何知道pagelayout中的页面数量(kivy,python)例如,当用户选择第3页的页面数量时,页面数量为' var将是3.请帮助

1 个答案:

答案 0 :(得分:1)

PageLayout中的页码编号

PageLayout 中,第一页的页码为0.第三页为2.有关详细信息,请参阅下面的示例。

PageLayout中的总页数

使用 for loop 来确定PageLayout中的总页数。

Snippets - PageLayout是Root

    for page in self.children:
        print(page)

Snippets - PageLayout不是Root

    for child in self.children:
        if isinstance(child, PageLayout):
            for page in child.children:
                print(page)

实施例

main.py

from kivy.app import App
from kivy.uix.pagelayout import PageLayout


class RootWidget(PageLayout):

    def print_page(self, btn):
        print("{0} has a page number = {1}".format(btn.text, self.page))


class TestApp(App):

    def build(self):
        return RootWidget()


if __name__ == "__main__":
    TestApp().run()

test.kv

#:kivy 1.10.0

<RootWidget>:
    Button:
        text: 'page1'
        on_release: root.print_page(self)
    Button:
        text: 'page2'
        on_release: root.print_page(self)
    Button:
        text: 'page3'
        on_release: root.print_page(self)

输出

Img01 - page1 has page number 0 Img02 - page3 has page number 2