アプリ内のすべてのテキストのデフォルトの色を黒に変更するために、color
内部のプロパティをに設定してみ<Label>
ました0,0,0,1
。
色:
(r、g、b、a) の形式のテキストの色。
color は ListProperty で、デフォルトは [1, 1, 1, 1] です。
ただし、これにより、使用されているマークアップの色に関係なく、テキストが黒くなります。たとえば、投稿の下部にあるコードは、次の場合に黒いテキストで 3 つのボタンを作成しますcolor: 0,0,0,1
。
および次の場合に予想される白、赤、緑のテキストの色color: 1,1,1,1
:
color
マークアップの色付けの後に適用され、上記の問題が発生すると想定しています。
質問:
テキストのデフォルトの色を変更する正しい方法は何ですか?
カイビーのバージョン: 1.9.0
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder
kv = """
<Label>:
markup: True
color: 0,0,0,1 # This defaults to 1,1,1,1 when not used
<MyWidget>:
orientation: 'vertical'
Button:
text: 'No markup text'
Button:
text: '[color=FF0000]Red markup[/color]'
Button:
text: '[color=7FFF00]Green markup[/color]'
"""
Builder.load_string(kv)
class MyWidget(BoxLayout):
pass
class MyButtonsApp(App):
def build(self):
return MyWidget()
if __name__ == '__main__':
MyButtonsApp().run()