我正在尝试在 Kivy 中使用 ScrollBar 进行 Boxlayout,但我做不到。下面是 .kv 文件的摘录。一旦 Boxlayout 溢出控件被隐藏并且没有滚动条,我就会动态地向 Boxlayout 添加控件。请指教。
<ProcessorUI>: #GridLayout
cols: 1
rows: 3
Label:
text: 'Output'
size_hint_x: None
width: 100
size_hint_y: None
height: 20
ScrollView:
size_hint: (None, None)
size: (400, 400)
BoxLayout:
id: output
orientation: 'vertical'
GridLayout
cols: 2
TextInput:
id: input
multiline: True
size_hint_y: None
height: 40
Button:
id: btn_process
text: 'Process'
size_hint_x: None
width: 100
size_hint_y: None
height: 40
on_press: root.on_event()
最佳答案
ScrollView:
size_hint: (None, None)
size: (400, 400)
BoxLayout:
id: output
orientation: 'vertical'
BoxLayout 没有手动设置高度,因此它总是精确地填充 Scrollview,并且永远不需要滚动条。
你可能真的想要像下面这样的东西
ScrollView:
size_hint: (None, None)
size: (400, 400)
GridLayout:
id: output
cols: 1
size_hint_y: None
height: self.minimum_height
最后两行设置网格布局高度以跟踪其子项的高度总和。您也可以将高度设置为任何其他值。
关于python - 在 Kivy 中将滚动条添加到 Boxlayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27699053/