【发布时间】:2022-01-17 18:30:47
【问题描述】:
我正在尝试制作一个可滚动的按钮列表。
当我构建按钮堆栈时,StackLayout 有一个名为 minimum_height 的参数,该参数由布局自动设置(因此它表示 kivy doc)。
但是当我运行调试时,我发现那个参数总是0。
我认为随着我添加更多按钮,它应该会发生变化,但事实并非如此。我不知道为什么。
from kivy.uix.button import Button
from kivy.app import App
from kivy.uix.scrollview import ScrollView
from kivy.uix.stacklayout import StackLayout
class MenuFases(StackLayout):
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.btns = []
for i in range(0, 20):
self.btns.append(Button(text=f'{i+1}º fase', size_hint=(1, .1)))
self.add_widget(self.btns[i])
self.size_hint=(1, None)
self.height = self.minimum_height
print(self.minimum_height)
class ScrollMenu(ScrollView):
def __init__(self, **kwargs):
super(ScrollMenu, self).__init__(**kwargs)
fase = MenuFases()
self.add_widget(fase)
class MyApp(App):
def build(self):
return ScrollMenu()
MyApp().run()
【问题讨论】:
标签: python kivy scrollview stacklayout