如何在矩形内添加文本?我使用下面的代码,并在画布内添加了一个标签,希望它能显示在矩形内。在
import kivy
from kivy.app import App
from kivy.uix.anchorlayout import AnchorLayout
from kivy.uix.gridlayout import GridLayout
from kivy.uix.label import Label
from kivy.uix.video import Video
from kivy.uix.relativelayout import RelativeLayout
from kivy.graphics import *
class MyApp(App):
def build(self):
r = AnchorLayout()
f = RelativeLayout()
g = GridLayout(cols=3, rows=5)
v = Video(source='driver.mp4', state='play', options={'eos':'loop'})
l1 = Label(text="jenkins", font_size=32)
l2 = Label(text="git", font_size=32)
f.add_widget(v)
f.add_widget(g)
g.add_widget(l1)
g.add_widget(l2)
with g.canvas:
Color(.4, .1, .1)
Rectangle(pos=(100,10), size=(100,100))
Label(text="KSHK")
return f
if __name__ == "__main__":
MyApp().run()
更新: 此文本的颜色不居中对齐
^{pr2}$
将
Label
与自定义背景色一起使用,然后将其放入布局中。例如:更新
修复OP的问题:
^{pr2}$注意,}和{}来绘制标签实际所在的位置。这就是为什么我在上面的级别上改变了标签本身的大小。画布大小被绑定到它。至于位置,它是由放置
ColoredLabel
的Rectange
需要有{ColoredLabel
的布局控制的,因此从ColoredLabel
类更改它不会有太大的变化。将其与FloatLayout
进行比较:在这种情况下,改变
ColoredLabel
内部的pos实际上有一个效果。在相关问题 更多 >
编程相关推荐