La appJar
biblioteca está diseñada para proporcionar la forma más fácil de crear una GUI usando Python. Es un envoltorio alrededor de Tkinter, para permitir que los estudiantes de secundaria desarrollen una GUI simple en Python. appJar
está diseñado de tal manera que puede ejecutarse en muchas versiones de Python, por lo que sería muy fácil trabajar con principiantes.
Instalación
La biblioteca appJar está diseñada para funcionar principalmente en escuelas, por lo que no requiere una instalación específica.
Cualquier programador de Python puede simplemente descargar el archivo zip, descomprimirlo y usar la biblioteca después de copiarlo dentro de la carpeta del código fuente.
También admite la instalación mediante el siguiente comando:
pip install appjar
Empezando
Para crear una appJar
aplicación:
- Importe la interfaz gráfica de usuario de la biblioteca appJar y cree una variable de interfaz gráfica de usuario.
Para esto, agregue la siguiente línea al comienzo del archivo de código fuente# import the library from appJar import gui # let app be name of gui variable app = gui()
- Usando la variable de la aplicación, configure el aspecto de la aplicación y la lógica de cada widget.
Por ejemplo, aquí estamos creando una ventana que muestra «Hola mundo» usando la variable de la aplicación.app.addLabel("title", " Hello World! ") app.setLabelBg("title", "blue")
- Por último, ejecute la aplicación agregando el siguiente comando en su código:
app.go()
Código completo:
# Python program to demonstrate # hello world in appjar # import the library from appJar import gui # let app be name of gui # variable app = gui() # Adding the label app.addLabel("title", " Hello World! ") # Setting the background color app.setLabelBg("title", "blue") app.go()
Producción:
Widgets
Hay dos tipos de widgets: widgets de entrada y widgets de salida. Los widgets suelen tener tres funciones comunes:
- agregar: esta función se usa para agregar el widget a la aplicación
- get: esta función se usa para obtener el contenido del widget
- set: esta función se utiliza para cambiar el contenido o configurar el widget
Para cada una de las funciones anteriores, el primer parámetro siempre será el título del widget. Algunos de los widgets de uso común se mencionan a continuación.
Widgets de entrada
Estos se utilizan para registrar la interacción del usuario con la aplicación haciendo clic, arrastrando o escribiendo.
- Entrada: este widget se usa para obtener la entrada escrita del usuario y, por lo general, este widget toma un solo parámetro: título
Sintaxis:
app.addEntry("entryTitle")
Puede establecer el valor predeterminado para una entrada usando:
app.setEntryDefault("entryTitle", "defaultText")
Para obtener el valor de una entrada específica, use:
app.getEntry("entryTitle")
Para obtener el valor de todas las entradas, use.
app.getAllEntries()
Nota: esto devolverá el contenido de todas las entradas como un diccionario.
Ejemplo:
# Python program to demonstrate
# entry widget appjar
from
appJar
import
gui
app
=
gui()
# Adding the entry
app.addEntry(
"entry_1"
)
# Setting the default value
app.setEntryDefault(
"entry_1"
,
"This is an Entry field"
)
app.go()
Producción:
- TextArea: este widget se usa para obtener la entrada escrita del usuario pero, a diferencia del campo Entrada, admite escribir texto en varias líneas.
Sintaxis:
app.addTextArea("textAreaTitle", text=None)
Puede agregar texto al área de texto especificada usando:
app.setTextArea("textAreaTitle", "someText", end = True, callFunction = True)
- De forma predeterminada, el texto se agrega al final del área de texto configurando end = False en el parámetro, puede agregar texto al principio del área de texto
- callFunction se establece en False, si no desea llamar a ninguna función asociada
Para obtener el valor de un uso específico del área de texto:
app.getTextArea("textAreaTitle")
Para obtener el contenido de todas las áreas de texto, utilice.
app.getAllTextAreas()
Nota: esto devolverá el contenido de todas las entradas como un diccionario.
Ejemplo
# Python program to demonstrate
# textarea widget appjar
from
appJar
import
gui
app
=
gui()
# Adding text area
app.addTextArea(
"TA_1"
)
# Setting the default value
app.setTextArea(
"TA_1"
,
"This is a Text field"
,
end
=
True
, callFunction
=
False
)
app.go()
Producción:
- Botón: el botón se usa para llamar a una función específica y hacer que la aplicación sea más interactiva con el usuario.
Sintaxis:
app.addButton("buttonTitle", functionName )
Aquí, se debe especificar functionName, que se llamará cuando se haga clic en el botón, donde el título se pasa como parámetro a la función llamada.
Puede cambiar el nombre del botón pero no el valor pasado como parámetro usando:
app.setButton("buttonTitle", "someText")
También puede colocar una imagen en el botón en lugar de texto usando:
app.setButtonImage("buttonTitle", "imagePath", align=None)
Si se establece la alineación, la imagen se alineará en relación con el texto; de lo contrario, la imagen simplemente reemplazará el texto.
Ejemplo:
# Python program to demonstrate
# button widget of appjar
from
appJar
import
gui
# Function to be passed
# when the button is clicked
def
clicked(btn):
print
(btn)
app
=
gui()
# Adding the button
app.addButton(
"btn_one"
, clicked)
# Change the name of the button
app.setButton(
"btn_one"
,
"Click me"
)
app.go()
Producción:
Después de hacer clic en el botón:
Widgets de salida
Estos widgets se utilizan para mostrar cierta información al usuario que interactúa con la aplicación.
- Etiqueta: las etiquetas se utilizan para mostrar textos en la aplicación.
Sintaxis:
app.addLabel("labelTitle", text="someText")
Aquí, si el texto se establece en Ninguno, el título de la etiqueta se mostrará en el widget de salida de etiquetas en la aplicación.
Puede cambiar el contenido de la etiqueta usando:
app.setLabel("labelTitle", "someText")
Obtienes el contenido de la etiqueta usando:
app.getLabel("labelTitle")
Ejemplo:
# Python program to demonstrate
# label widget of appjar
from
appJar
import
gui
app
=
gui()
# Adding the label
app.addLabel(
"label_1"
,
text
=
"This is a label"
)
app.go()
Producción:
- Mensaje: el widget de mensajes se usa para mostrar textos en varias líneas en la aplicación.
Sintaxis:
app.addMessage("messageTitle", text="someText")
Aquí, si el texto se establece en Ninguno, el título del widget de Mensaje se mostrará en el widget de salida de Mensaje en la aplicación.
Puede cambiar el contenido del mensaje usando:
app.setMessage("messageTitle", "someText")
Borra el contenido del widget de mensaje especificado usando:
app.clearMessage("messageTitle")
Ejemplo
# Python program to demonstrate
# message widget of appjar
from
appJar
import
gui
app
=
gui()
# Adding the message label
app.addLabel(
"label_1"
,
text
=
"This is a message label"
)
app.go()
Producción:
Publicación traducida automáticamente
Artículo escrito por Meet Parekh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA