kivy Label halignについて
Label
kivyでは簡単にtextを表示するLabelが作れる。
self.Label1 = Label(text="label", font_size = "18sp", size_hint=(.1, .1), pos_hint={'center_x': .5, 'center_y': .5})
halignというパラメータ?があって、leftってしたら、pos_hintを参照して、左詰めで表示できると思ってた。例えば、
self.Label1 = Label(text="label1", font_size = "18sp",halign='left', size_hint=(.1, .1), pos_hint={'center_x': .5, 'center_y': .5}) self.Label2 = Label(text="label2", font_size = "18sp",halign='left', size_hint=(.1, .1), pos_hint={'center_x': .5, 'center_y': .4}) self.Label3 = Label(text="label 3", font_size = "18sp",halign='left', size_hint=(.1, .1), pos_hint={'center_x': .5, 'center_y': .3})
上記のようにして、左詰めでlabel1, label2, label 3, って表示される予定だったけど、そうはならず、Label3の表示が少し左にずれる。Label3 だけ textの長さが違うからだ。
halign='left'はラベルのtext開始位置を操作するのではなく、
self.Label1 = Label(text="label1\nlabel2\nlabel 3", font_size = "18sp",halign='left', size_hint=(.1, .1), pos_hint={'center_x': .5, 'center_y': .5})
のようにして、label text内での改行後に左詰めするような操作となる。わかってしまえば、何てことないが、結構はまってしまった・・・。