gpt4 book ai didi

python - Kivy:Kivy 语言中的 ScrollViewApp 示例

转载 作者:太空宇宙 更新时间:2023-11-03 15:19:52 24 4
gpt4 key购买 nike

我无法在 Kivy 语言和 Python 语言的概念之间来回切换。我不太擅长解释事情,我已经考虑过如何解释我的特定问题,但我能想到的最好的方法是:

如何实现 ScrollViewApp使用 Builder 函数?

最佳答案

嗯,有点像

ScrollView:
size_hint: None, None
size: 500, 320
pos_hint: {'center_x': .5, 'center_y': .5}
do_scroll_x: False

GridLayout:
cols: 1
padding: 10
spacing: 10
size_hint_y: None
height: self.minimum_height

ScrollButton:
text: '1'
ScrollButton:
text: '2'
ScrollButton:
text: '3'
ScrollButton:
text: '4'
ScrollButton:
text: '5'
ScrollButton:
text: '6'

<ScrollButton@Button>
size_hint: None, None
size: 480, 40

这里,但是我们真的没有办法动态创建子项(好吧,会有办法,但它们很丑),所以我手动写了一些,理想情况下你会在 kv 中创建 ScrollView 和 GridLayout ,然后将子项从 python 放入其中(使用 id,如文档中所述)。

编辑:使用应用程序和 ObjectProperty 的更完整版本

kv文件(scroll.kv):

ScreenManager:
Screen:
ScrollView:
size_hint: None, None
size: 500, 320
pos_hint: {'center_x': .5, 'center_y': .5}

GridLayout:
cols: 1
padding: 10
spacing: 10
height: self.minimum_height
size_hint: None, None
do_scroll_x: False
id: container

<ScrollButton>
size_hint: None, None
size: 480, 40

python 文件(main.py):

from kivy.app import App
from kivy.uix.button import Button

class ScrollButton(Button):
pass

class ScrollApp(App):
def build(self):
super(ScrollApp, self).build()
container = self.root.ids.container
for i in range(30):
container.add_widget(ScrollButton(text=str(i)))
return self.root # return root does not work

if __name__ == '__main__':
ScrollApp().run()

关于python - Kivy:Kivy 语言中的 ScrollViewApp 示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16930148/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com