組み込み技術を向上したい!!

でも組み込み以外にも手を出し始めました・・・

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内での改行後に左詰めするような操作となる。わかってしまえば、何てことないが、結構はまってしまった・・・。