Kivyはラベルの背景色を定義します

オリー

Python用のKivy言語でさまざまなオブジェクト(この例ではラベル)の背景色を定義するのに問題があります。添付のコードは、各ボックスが特定の背景色を持つボックスレイアウトを作成します。

  1. ハードコーディングするのではなく、変数を介して特定のラベルのサイズを定義できるように、このコードをどのように適合させることができますか。次のような解決策を考え出すことができれば、最善の方法です。
    ForeignLanguage = ColoredLabel(..., size = (a,b))
  1. 私のコードは私にはかなり複雑に見えます。Label(...、background_color =(1,1,1,1))のように、ラベルの背景色をより簡単な方法で設定することは可能ですか?

    from kivy.app import App
    from kivy.uix.boxlayout import BoxLayout
    from kivy.uix.label import Label
    from kivy.properties import ListProperty
    from kivy.lang import Builder
    from kivy.core.window import Window


    kv = '''
    <ColoredLabel>:
        size: (self.size_x,self.size_y)
        pos: (0,0) # no effect
        background_color:
        canvas.before:
            Color:
                rgba: self.background_color
            Rectangle:
                pos: self.pos
                size: (self.size_x,self.size_y)
        '''

    Builder.load_string(kv)

    class ColoredLabel(Label):
        background_color = ListProperty((0,0,0,1))
        s_global = Window.size
        size_x = s_global[0]
        size_y = s_global[1]/3

    class MyWidget(BoxLayout):
        #init
        def __init__(self, **kwargs):
            super().__init__(**kwargs)
            ForeignLanguage = ColoredLabel(text="ForeignLanguage", size_hint=(None, None), background_color=(0/255,171/255,169/255, 1))
            Translation = ColoredLabel(text="Translation", size_hint=(None, None), background_color=(45/255,137/255,239/255, 1))
            Example = ColoredLabel(text="Example", size_hint=(None, None), background_color=(43/255,87/255,151/255, 1))
            verticalBox     = BoxLayout(orientation='vertical')
            verticalBox.add_widget(ForeignLanguage)
            verticalBox.add_widget(Translation)
            verticalBox.add_widget(Example)
            self.add_widget(verticalBox)

    class BoxLayoutDemo(App):
        def build(self):
            return MyWidget()

    if __name__ == '__main__':
        BoxLayoutDemo().run()
イコリム

質問1

ハードコーディングするのではなく、変数を介して特定のラベルのサイズを定義できるように、このコードをどのように適合させることができますか。次のような解決策を考え出すことができれば、最善の方法です。

ForeignLanguage = ColoredLabel(..., size = (a,b))

回答

kvファイルに次のデザインを含めるだけです。ラベルウィジェットの継承を使用すると、定義されたすべての属性は、例えば利用できるようになりますsizesize_hintcolormarkupなど

スニペット-kvファイル

<ColoredLabel>:
    canvas.before:
        Color:
            rgba: root.background_color
        Rectangle:
            pos: self.pos
            size: self.size

質問2

私のコードは私にはかなり複雑に見えます。Label(...、background_color =(1,1,1,1))のように、より簡単な方法でラベルの背景色を設定することは可能ですか?

回答

あなたのコードはうまく見えました。

スニペット-pyファイル

    ForeignLanguage = ColoredLabel(text="ForeignLanguage", size_hint=(None, None), size=(300, 40),
                                   background_color=(1, 0, 0, 1))
    Translation = ColoredLabel(text="Translation", size_hint=(None, None), size=(100, 30),
                               background_color=(0, 1, 0, 1))
    Example = ColoredLabel(text="Example", size_hint=(None, None), size=(200, 20),
                           background_color=(0, 0, 1,  1))

出力

結果

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

gnuplotはデータラベルの背景色を設定します

分類Dev

CSSホバーは他のラベルの背景色を変更します

分類Dev

JavaFXはTableColumnのセルの背景色を設定します

分類Dev

ラベルChart.jsの背景色を変更します

分類Dev

PhpSpreadsheetはセルの背景色を白に設定します

分類Dev

リストセルの背景色を設定しますが、:hover:selected背景色は保持します

分類Dev

カラーコレクションビューラベルの背景色を動的に設定します

分類Dev

tableViewのセルのeditingStyle背景色とラベルを変更します

分類Dev

Kivyでラベルの背景色を動的に変更する方法

分類Dev

JavaFxはTableviewセルの背景色を動的に設定します

分類Dev

JavaFxはTableviewセルの背景色を動的に設定します

分類Dev

QtはQLineEditの背景色を設定します

分類Dev

AndroidStudioはビューの背景色を設定します

分類Dev

JButtonの背景色と前景アイコンを定義しますか?

分類Dev

ラベルの背景色を透明に設定できません

分類Dev

UITableViewは特定のセルの背景色を変更します

分類Dev

反応でラベルの背景色を設定するにはどうすればよいですか?

分類Dev

Highcharts HTMLラベルの背景色を設定するにはどうすればよいですか?

分類Dev

Matplotlib-目盛りラベルの背景色を設定する

分類Dev

POIはセルの背景色を削除します

分類Dev

DT :: formatStyleは、生のHTMLを使用した文字ベクトルに基づいてデータテーブル行の背景色を設定します

分類Dev

Kivyボタンの位置とラベルの背景色

分類Dev

16進数からのKivyラベルの背景色

分類Dev

Qtは選択したQTableWidgetItemsの背景色を設定します

分類Dev

JTableで指定されたセルの背景色を設定します

分類Dev

xamarinは、16進値からビューの背景色を設定します

分類Dev

UITableViewは背景色を設定します

分類Dev

Androidの背景色を正しく設定する方法は?

分類Dev

matplotlibで画像の背後に背景色を設定します

Related 関連記事

  1. 1

    gnuplotはデータラベルの背景色を設定します

  2. 2

    CSSホバーは他のラベルの背景色を変更します

  3. 3

    JavaFXはTableColumnのセルの背景色を設定します

  4. 4

    ラベルChart.jsの背景色を変更します

  5. 5

    PhpSpreadsheetはセルの背景色を白に設定します

  6. 6

    リストセルの背景色を設定しますが、:hover:selected背景色は保持します

  7. 7

    カラーコレクションビューラベルの背景色を動的に設定します

  8. 8

    tableViewのセルのeditingStyle背景色とラベルを変更します

  9. 9

    Kivyでラベルの背景色を動的に変更する方法

  10. 10

    JavaFxはTableviewセルの背景色を動的に設定します

  11. 11

    JavaFxはTableviewセルの背景色を動的に設定します

  12. 12

    QtはQLineEditの背景色を設定します

  13. 13

    AndroidStudioはビューの背景色を設定します

  14. 14

    JButtonの背景色と前景アイコンを定義しますか?

  15. 15

    ラベルの背景色を透明に設定できません

  16. 16

    UITableViewは特定のセルの背景色を変更します

  17. 17

    反応でラベルの背景色を設定するにはどうすればよいですか?

  18. 18

    Highcharts HTMLラベルの背景色を設定するにはどうすればよいですか?

  19. 19

    Matplotlib-目盛りラベルの背景色を設定する

  20. 20

    POIはセルの背景色を削除します

  21. 21

    DT :: formatStyleは、生のHTMLを使用した文字ベクトルに基づいてデータテーブル行の背景色を設定します

  22. 22

    Kivyボタンの位置とラベルの背景色

  23. 23

    16進数からのKivyラベルの背景色

  24. 24

    Qtは選択したQTableWidgetItemsの背景色を設定します

  25. 25

    JTableで指定されたセルの背景色を設定します

  26. 26

    xamarinは、16進値からビューの背景色を設定します

  27. 27

    UITableViewは背景色を設定します

  28. 28

    Androidの背景色を正しく設定する方法は?

  29. 29

    matplotlibで画像の背後に背景色を設定します

ホットタグ

アーカイブ