【发布时间】:2016-08-19 22:52:36
【问题描述】:
我无法在 FloatLayout 中找到 scroll label。
原始代码来自 Alexander Taylor。链接:https://github.com/kivy/kivy/wiki/Scrollable-Label
我想将scroll label 定位为如图所示。
位置值是:
vtop = 屏幕高度 / 10
vbottom = 屏幕高度 / 20
hleft = 屏幕宽度 / 20
hright = 屏幕宽度 / 40
我在原始代码中添加了一个 FloatLayout。这是我更改的代码。
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.scrollview import ScrollView
from kivy.properties import StringProperty
from kivy.lang import Builder
from kivy.uix.floatlayout import FloatLayout
long_text = 'yay moo cow foo bar moo baa ' * 200
Builder.load_string('''
<ScrollableLabel>:
FloatLayout:
Label:
size: root.width - root.width/20 - root.width/40, root.height - root.height/10 - root.height/20
pos: root.width /20, root.height / 20
#size_hint: (None, None)
# valign: 'top'
size_hint_y: None
height: self.texture_size[1]
text_size: self.width - self.width/20 - self.width/40, self.height - self.height/10 - self.height/20
# text_size: self.width , None
font_size: 30
text: root.text
''')
class ScrollableLabel(ScrollView):
text = StringProperty('')
class ScrollApp(App):
def build(self):
return ScrollableLabel(text=long_text)
if __name__ == "__main__":
ScrollApp().run()
我尝试了一些方法来定位滚动标签,正如您在上面的代码中看到的那样,但它没有给我所需的结果。
我会询问您的想法以使代码正确。谢谢!
【问题讨论】:
标签: kivy