kivy - KIVY:缺少滚动条
问题描述
我正在尝试在anchorlayout 中使用ScrollView。无法在相对布局中获得滚动条。请在下面找到我的示例代码。为什么滚动条不可见。
import kivy
from kivy.app import App
from kivy.uix.scrollview import ScrollView
from kivy.lang import Builder
from kivy.uix.relativelayout import RelativeLayout
from kivy.uix.button import Button
from kivy.factory import Factory
from kivy.core.window import Window
Builder.load_string('''
<ScrollView>:
size_hint: 1,1
DrawingSpace:
size_hint: 1,1
''')
class Main(App):
def build(self):
self.root=DrawingSpace()
return self.root
class DrawingSpace(RelativeLayout):
def __init__(self, **kwargs):
super(RelativeLayout, self).__init__(**kwargs)
self.add_widget( Button(text = 'Scroll', size_hint=(None,None), size=(50,200), pos = (100, 100)))
self.add_widget( Button(text = 'Scroll', size_hint=(None,None), size=(50,200), pos = (250, 300)))
Factory.register('DrawingSpace', cls=DrawingSpace)
if __name__ in ('__main__'):
Window.size = (200, 200)
app = Main()
app.run()
谢谢
解决方案
对于ScrollView
,在您想要滚动的方向上,您必须设置size_hint
并None
指定大小。我用500进行测试。
import kivy
from kivy.app import App
from kivy.uix.scrollview import ScrollView
from kivy.lang import Builder
from kivy.uix.relativelayout import RelativeLayout
from kivy.uix.button import Button
from kivy.factory import Factory
from kivy.core.window import Window
Builder.load_string('''
<ScrollView>:
size_hint: 1,1
DrawingSpace:
size_hint: 1,None
height: 500
''')
class Main(App):
def build(self):
self.root=ScrollView()
return self.root
class DrawingSpace(RelativeLayout):
def __init__(self, **kwargs):
super(RelativeLayout, self).__init__(**kwargs)
self.add_widget( Button(text = 'Scroll', size_hint=(None,None), size=(50,200), pos = (100, 100)))
self.add_widget( Button(text = 'Scroll', size_hint=(None,None), size=(50,200), pos = (250, 300)))
Factory.register('DrawingSpace', cls=DrawingSpace)
if __name__ in ('__main__'):
Window.size = (200, 200)
app = Main()
app.run()
推荐阅读
- python - 为什么我不能用 pip 安装 jpype?
- go - 在 go lang 的另一个函数中使用一个函数的变量
- swift - 如何在swift中初始化闭包变量?
- javascript - 如何使用 JS 动态创建这些 HTML 元素
- python - 使用 Tensorflow 2.x 构建神经网络时应该使用哪一层?
- html - 一个页面只能有一个服务器端 Form 标签。错误
- perl - 在 Perl 中从哈希映射中删除键
- java - 为什么 Spring boot JPA 本机更新会给 PSQLException 和 postgres 数据库?
- c# - 如何在 C# 中访问匿名类型化 JArray 的字段?
- python - 循环遍历元组