这是变态的特点
lines="""
GridLayout:
name:"{}"
rows:1
canvas:
Color:
rgba:{}
Line:
points:{}
width:5
"""line3 = Builder.load_string(lines.format("line3","0.5,0.5,0.3, 1","self.pos[0]-self.size[0],self.pos[1]+30,self.pos[0]+self.size[0],self.pos[1]+300"))这是完整代码
from kivy.app import Appfrom kivy.lang import Builderfrom kivy.uix.boxlayout import BoxLayoutfrom kivy.uix.button import Buttonfrom kivy.uix.label import Label
Builder.load_string(''':
orientation: 'vertical'
RelativeLayout:
name:"index_layout"
canvas:
Color:
rgba: 1,1,1, 1
Rectangle:
pos:self.pos
size: self.size
GridLayout:
name:"parent_layout"
rows:1
GridLayout:
name:"left"
cols:1
GridLayout:
name:"left_1"
cols:1
canvas:
Color:
rgba: 0.5, 1, 1, 1
Rectangle:
pos:self.pos
size: self.size
GridLayout:
name:"left_2"
cols:1
size_hint_y:5
canvas:
Color:
rgba: 1, 0, 1, 1
Rectangle:
pos:self.pos
size: self.size
GridLayout:
name:"left_3"
cols:1
canvas:
Color:
rgba: 1, 1, 0.6, 1
Rectangle:
pos:self.pos
size: self.size
GridLayout:
name:"left_4"
cols:1
canvas:
Color:
rgba: 1, 0.9, 1, 1
Rectangle:
pos:self.pos
size: self.size
GridLayout:
name:"center"
cols:1
size_hint_x:6
GridLayout:
name:"center_1"
rows:1
canvas:
Color:
rgba: 1, 0, 1, 1
Rectangle:
pos:self.pos
size: self.size
GridLayout:
name:"center_2"
rows:1
size_hint_y:5
GridLayout:
name:"center_3"
rows:1
canvas:
Color:
rgba: 1, 0.5, 0.2, 1
Rectangle:
pos:self.pos
size: self.size
GridLayout:
name:"center_4"
rows:1
canvas:
Color:
rgba: 1, 0.3, 0.2, 1
Rectangle:
pos:self.pos
size: self.size
GridLayout:
name:"right"
rows:1
''')line1=Builder.load_string("""
GridLayout:
name:"line1"
rows:1
canvas:
Color:
rgba: 0.5,0.5,0.3, 1
Line:
points:self.pos[0],self.pos[1]+30,self.pos[0],self.pos[1]+self.size[1]-30
width:5
""")line2 = Builder.load_string("""
GridLayout:
name:"line2"
rows:1
canvas:
Color:
rgba: 0.5,0.5,0.3, 1
Line:
points:self.pos[0]-self.size[0],self.pos[1]+30,self.pos[0]+self.size[0],self.pos[1]+30
width:5
""")lines="""
GridLayout:
name:"{}"
rows:1
canvas:
Color:
rgba:{}
Line:
points:{}
width:5
"""line3 = Builder.load_string(lines.format("line3","0.5,0.5,0.3, 1","self.pos[0]-self.size[0],self.pos[1]+30,self.pos[0]+self.size[0],self.pos[1]+300"))class CameraClick(BoxLayout):
passclass TestCamera(App):
def build(self):
y_labels= ("100", "80","60" , "40", "20","0")
x_labels= ("Sur","Fea","Dis","Hap","Sad","Ang","Nat","x","y","z")
printer=CameraClick()
# 绘制纵坐标
for text in y_labels:
printer.children[0].children[0].children[2].children[2].add_widget(Label(text=text))
# 标题
printer.children[0].children[0].children[1].children[3].add_widget(Label(text="title"))
# 设置横纵坐标轴刻度
# line1
# 绘制坐标轴
printer.children[0].children[0].children[1].children[2].add_widget(line1)
printer.children[0].children[0].children[1].children[2].add_widget(line2)
#
printer.children[0].children[0].children[1].children[2].add_widget(line3)
# 绘制很坐标
for text in x_labels:
printer.children[0].children[0].children[1].children[1].add_widget(Label(text=text))
printer.children[0].children[0].children[1].children[0].add_widget(Label(text="title"))
return printerif __name__ == '__main__':
TestCamera().run()
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did126879