python - 我如何知道页面布局中的页数(kivy,python)
问题描述
我如何知道页面布局中的页数(kivy,python)例如,当用户选择“page”变量的第 3 页时,将是 3。请帮助
解决方案
PageLayout 中的页面编号
在PageLayout中,第一页的页码为 0。第三页为 2。具体请参考下面的示例。
PageLayout 中的总页数
使用for 循环确定 PageLayout 中的总页数。
片段 - PageLayout 是 Root
for page in self.children:
print(page)
片段 - PageLayout 不是 Root
for child in self.children:
if isinstance(child, PageLayout):
for page in child.children:
print(page)
例子
主文件
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()
测试.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)
输出
推荐阅读
- r - 更改数据框中除第一次出现的列变量之外的所有内容
- javascript - 平滑滚动到按钮 - 如何修复?
- docker - 无法从 rq.exceptions 导入名称“UnpickleError”
- reactjs - 无法在反应中正确显示路线
- validation - 验证允许我输入字符的输入字段
- android - 如何使用包名打开 Google Play?还是带有 URL 的 Chrome?
- flutter - 如何将带有小部件的列表添加到 Flutter 中的共享首选项?
- python - 维基百科 API 缺少信息的问题
- python - 包括在循环中计算导数
- c# - 如何比较用户选择的两个文件?