Temas y paletas de colores en KivyMD

KivyMD es una extensión del marco Kivy. KivyMD es una colección de widgets de Material Design para usar con Kivy, un marco GUI para crear aplicaciones móviles. Es similar al marco Kivy pero proporciona una GUI más atractiva. En este artículo, vamos a ver temas y paletas de colores en KivyMD.

Temas en KivyMD:

Para hacer que nuestra aplicación sea más atractiva y fácil de usar, podemos usar temas y diferentes colores para nuestra aplicación. Para cambiar el color del tema, el módulo de la aplicación tiene la función incorporada theme_cls.

theme_cls.theme_style: tiene 2 opciones: oscuro y claro

Sintaxis: self.theme_cls.theme_style=”Oscuro” o “Claro”

Código:

Python3

# importing all necessary modules
# like MDApp, MDLabel Screen, MDTextField
# and MDRectangleFlatButton
from kivymd.app import MDApp
from kivymd.uix.screen import Screen
from kivymd.uix.button import MDRectangleFlatButton
  
# creating Demo Class(base class)
class Demo(MDApp):
  
    def build(self):
        screen = Screen()
          
        # adding theme_color
        self.theme_cls.theme_style="Dark"
          
        btn = MDRectangleFlatButton(text="HI", pos_hint={
                                    'center_x': 0.5, 'center_y': 0.5},
                                    on_release=self.btnfunc)
        # adding widgets to screen
        screen.add_widget(btn)
          
        # returning the screen
        return screen
  
    # defining a btnfun() for the button to
    # call when clicked on it
    def btnfunc(self, obj):
        print("button is pressed!!")
  
  
if __name__ == "__main__":
    Demo().run()

Producción:

Ahora, veamos vamos a cambiar el fondo del tema a un color claro:

Python3

# importing all necessary modules
# like MDApp, MDLabel Screen, MDTextField
# and MDRectangleFlatButton
from kivymd.app import MDApp
from kivymd.uix.screen import Screen
from kivymd.uix.button import MDRectangleFlatButton
  
# creating Demo Class(base class)
class Demo(MDApp):
  
    def build(self):
        screen = Screen()
  
        # adding theme_color
        self.theme_cls.theme_style = "Light"
  
           # defining Button with all the parameters
        btn = MDRectangleFlatButton(text="HI", pos_hint={
            'center_x': 0.5, 'center_y': 0.3},
                                    on_release=self.btnfunc)
        # adding widgets to screen
        screen.add_widget(btn)
          
        # returning the screen
        return screen
  
    # defining a btnfun() for the button to
    # call when clicked on it
    def btnfunc(self, obj):
        print("button is pressed!!")
  
if __name__ == "__main__":
    Demo().run()

Producción:

Cambiando el color de la paleta primaria:

Para cambiar los colores, el módulo de la aplicación tiene la función incorporada theme_cls.

  • theme_cls.primary_palette: Tiene una variedad de colores. Acepta una string de nombre de color.
  • theme_cls.primary_hue: Define la opacidad del color 100 para claro y A700 para oscuro.

Sintaxis: theme_cls.primary_palette=string de nombre de color (por ejemplo, «azul»)

              theme_cls.primary_hue=opacidad del color

Ejemplo 1: Aquí colorearemos con el color verde y opacidad 100

Python3

# importing all necessary modules
# like MDApp, MDLabel Screen, MDTextField
# and MDRectangleFlatButton
from kivymd.app import MDApp
from kivymd.uix.screen import Screen
from kivymd.uix.button import MDRectangleFlatButton
  
  
# creating Demo Class(base class)
class Demo(MDApp):
  
    def build(self):
        screen = Screen()
  
        # adding theme_color
        self.theme_cls.primary_palette = "Green"
        self.theme_cls.primary_hue = "100"
        self.theme_cls.theme_style = "Light"
  
        btn = MDRectangleFlatButton(text="HI", pos_hint={
            'center_x': 0.5, 'center_y': 0.5},
                                    on_release=self.btnfunc)
        # adding widgets to screen
        screen.add_widget(btn)
  
        # returning the screen
        return screen
  
  
    # defining a btnfun() for the button to
    # call when clicked on it
    def btnfunc(self, obj):
        print("button is pressed!!")
  
  
if __name__ == "__main__":
    Demo().run()

Producción:

Ejemplo 2: con el color cian y opacidad A700

Python3

# importing all necessary modules
# like MDApp, MDLabel Screen, MDTextField
# and MDRectangleFlatButton
from kivymd.app import MDApp
from kivymd.uix.screen import Screen
from kivymd.uix.button import MDRectangleFlatButton
  
# creating Demo Class(base class)
class Demo(MDApp):
  
    def build(self):
        screen = Screen()
  
        # adding theme_color
        self.theme_cls.primary_palette = "Cyan"
        self.theme_cls.primary_hue = "A700"
        self.theme_cls.theme_style = "Light"
  
        btn = MDRectangleFlatButton(text="HI", pos_hint={
            'center_x': 0.5, 'center_y': 0.5},
                                    on_release=self.btnfunc)
        # adding widgets to screen
        screen.add_widget(btn)
  
        # returning the screen
        return screen
  
    # defining a btnfun() for the button to
    # call when clicked on it
    def btnfunc(self, obj):
        print("button is pressed!!")
  
if __name__ == "__main__":
    Demo().run()

Producción:

Publicación traducida automáticamente

Artículo escrito por vanisinghal0201 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *