Construyendo una aplicación simple usando KivyMD en Python

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, veremos cómo crear una aplicación simple en KivyMD usando Screen, Label, TextFieldInput y Button.

Instalación:

Para iniciar KivyMD, primero debe instalar el marco Kivy en su computadora. Se puede instalar usando el siguiente comando:

pip install kivymd

Widgets utilizados:

Necesitamos importar los siguientes widgets usando la biblioteca kivyMD.uix:

  • MDLabel(): este widget se usa en aplicaciones KivyMD para agregar una etiqueta o para mostrar textos como una etiqueta.

MDLabel(texto, halign, tema_texto_color, texto_color, fuente_estilo)

Parámetros:

  • text- El texto que queremos poner en la etiqueta.
  • halign- La posición donde queremos poner la etiqueta.
  • theme_text_color : el tema para colores de texto como personalizado, primario, secundario, pista o error.
  • text_color: si theme_text_color es personalizado, podemos asignar el color del texto a una tupla RGB.
  • font_style- Como título, encabezados.
  • MDTextField(): este widget se usa para agregar botones en la ventana de KivyMD.

MDTextField(texto, pos_sugerencia)

  • text- El texto que queremos poner en el TextField.
  • pos_hint- Un diccionario que tiene la posición con respecto al eje x y al eje y.
  • MDRectangleFlatButton(): este widget se usa para agregar botones de forma rectangular a una aplicación KivyMD.

MDRectangleFlatButton(texto, pos_hint, on_release)

  • text- El texto que queremos poner en el botón.
  • pos_hint- Un diccionario que tiene la posición con respecto al eje x y al eje y.
  • on_release- Es una función que tiene las propiedades que queremos llamar al hacer clic en el botón.

Veamos el código para crear la aplicación simple usando los widgets mencionados anteriormente y luego discutiremos el código en detalle.

Python3

# importing all necessary modules
# like MDApp, MDLabel Screen, MDTextField
# and MDRectangleFlatButton
from kivymd.app import MDApp
from kivymd.uix.label import MDLabel
from kivymd.uix.screen import Screen
from kivymd.uix.textfield import MDTextField
from kivymd.uix.button import MDRectangleFlatButton
 
# creating Demo Class(base class)
class Demo(MDApp):
 
    def build(self):
        screen = Screen()
         
        # defining label with all the parameters
        l = MDLabel(text="HI PEOPLE!", halign='center',
                    theme_text_color="Custom",
                    text_color=(0.5, 0, 0.5, 1),
                    font_style='Caption')
         
        # defining Text field with all the parameters
        name = MDTextField(text="Enter name", pos_hint={
                           'center_x': 0.8, 'center_y': 0.8},
                           size_hint_x=None, width=100)
         
        # defining Button with all the parameters
        btn = MDRectangleFlatButton(text="Submit", pos_hint={
                                    'center_x': 0.5, 'center_y': 0.3},
                                    on_release=self.btnfunc)
        # adding widgets to screen
        screen.add_widget(name)
        screen.add_widget(btn)
        screen.add_widget(l)
        # 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:

Cuando se presiona el botón, muestra el siguiente resultado en el símbolo del sistema:

Explicación:

  • Esta demostración de clase se deriva de la clase App() de kivymd.app . Esta clase es la clase base para crear la aplicación kivyMD. Es básicamente el principal punto de entrada al bucle de ejecución de kivyMD.
  • Aquí el método build() “Inicializa la aplicación; se llamará una sola vez. Si este método devuelve un widget (árbol), se utilizará como widget raíz y se agregará a la ventana.
  • Aquí, en el método de compilación, primero definimos una pantalla para que se muestren los widgets. Luego agregamos los widgets uno por uno
    • Etiqueta para el título o encabezado de la página.
    • Un campo de texto para la entrada del usuario. Puede agregar más campos de texto.
    • Un botón para enviar o realizar cualquier función. Aquí, al hacer clic en el botón Enviar, se imprime un mensaje en la consola. Hemos creado la función btnfunc() para lo mismo.
  • Demo.run () es el método run() que inicia la aplicación en modo independiente y llama a la clase Demo que devuelve la pantalla.

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 *