Tkinter Listbox

Tkinter Listbox



El conjunt d'eines GUI predeterminat per a Python s'anomena Tkinter. La combinació de Python amb Tkinter fa que sigui ràpid i senzill desenvolupar les aplicacions GUI. Tkinter proporciona una passarel·la d'entrada orientada a objectes eficaç per al conjunt d'eines de la GUI de Tk. És senzill construir una interfície Gui utilitzant el Tkinter. Dins d'aquesta guia, us mostrarem l'ús de la biblioteca Tkinter per crear una GUI de Tkinter i afegir-hi un widget Listbox.

Començant amb el sistema Ubuntu 20.04, actualitzem el nostre sistema mitjançant algunes ordres a l'intèrpret d'ordres del terminal. Llencem l'aplicació del terminal amb Ctrl+Alt+T i hi afegim la instrucció 'actualitzar' adequada. L'execució requereix la contrasenya de l'usuari connectat i actualitza tot el sistema després d'afegir una contrasenya.







Després de la instal·lació correcta de python3, heu d'instal·lar la utilitat Python tk per utilitzar els seus diferents ginys al codi. Per a la instal·lació, proveu l'ordre següent a l'àrea de consulta del terminal:





La instal·lació d'aquesta utilitat requereix la vostra afirmació abans de completar-se. Premeu 'y' després de fer la pregunta següent:





Després de tota la instal·lació d'aquesta utilitat, obtenim el següent quadre de diàleg per al giny 'tk' a la pantalla del terminal. Té dos botons: un per sortir i un altre per fer un clic.



En fer clic contínuament a 'Feu clic a mi!' botó, obtenim els claudàtors al voltant del text que conté. La pantalla de diàleg de 'Tk' es fa més gran d'amplada. En tocar el botó 'Surt
botó, el diàleg tk es tanca amb qualsevol problema.

Exemple 1:

Comencem el nostre primer exemple de Python per mostrar l'ús del Tkinter Listbox al programa. Per a això, creem un nou fitxer Python i importem totes les funcions relacionades de la biblioteca “Tkinter”. L'objecte GUI 't' es crea al codi mitjançant la funció 'Tk()'. Ens permet crear la finestra principal de la GUI a la nostra pantalla. La funció geometry() s'anomena utilitzant l'objecte “t” de Tkinter per crear una pantalla d'una mida específica.

Ara, creem una etiqueta del giny 'l' de tipus de text a la pantalla de la GUI de Tkinter amb text per etiquetar el giny. Després d'això, creem un widget Listbox utilitzant l'objecte 't' als paràmetres d'una funció 'Listbox'. La funció insert() que utilitza el widget Listbox es crida per afegir 5 nous valors de cadena a Listbox amb la numeració especificada per crear una comanda.

L'etiqueta 'l' s'empaqueta després amb la funció pack(). El quadre de llista està ple. La funció mainloop() s'anomena utilitzant l'objecte 't' de Tkinter per crear un bucle bàsic d'esdeveniments creats per un usuari. Així és com s'utilitza un Listbox a Python mitjançant el mòdul Tkinter. El programa ja està complet i llest per al seu ús. Desem-lo al fitxer i deixem-lo.

#!/usr/bin/python3
de la importació de tkinter *
t = Tk ( )
t.geometria ( '200 x 250' )
l = etiqueta ( t, text = 'Els meus colors preferits...' )
listbox = Listbox ( t )
quadre de llista.inserir ( 1 , 'Blanc' )
quadre de llista.inserir ( 2 , 'Negre' )
quadre de llista.inserir ( 3 , 'Vermell' )
quadre de llista.inserir ( 4 , 'Blau' )
quadre de llista.inserir ( 5 , 'groc' )
l.pack ( )
listbox.pack ( )
t.mainloop ( )

Després de tancar el fitxer, tornem a iniciar el terminal i enumerem el contingut del directori principal mitjançant la instrucció 'ls'. Mostra que el fitxer Python recentment actualitzat també hi és. Utilitzem python3 per executar el fitxer Python.

Després de l'execució, s'obre la següent pantalla GUI de Tkinter a la nostra pantalla amb el títol 'tk'. Dins de l'àrea de color gris, podeu veure el text etiquetat. A l'àrea blanca, podeu veure els elements Listbox, és a dir, els elements afegits al Listbox mitjançant l'objecte Listbox. Podeu tancar la pantalla de la GUI de Tkinter utilitzant el signe de creu que es mostra en vermell a l'extrem dret.

Exemple 2:

Fem una ullada a l'ús de Listbox juntament amb altres ginys per fer-lo una mica interactiu. El mateix script de Python s'utilitza al mateix fitxer de codi amb canvis menors en algunes línies. Afegim una nova línia de codi a la línia número 12 d'aquest codi. Creem un botó 'b' a la pantalla de la GUI de Tkinter utilitzant la funció 'Botó' prenent el text 'Suprimeix' com a etiqueta de botó i l'objecte de Tkinter 't'.

El tercer paràmetre de la funció Button() conté l'ordre d'eliminació d'elements Listbox mitjançant ANCHOR, és a dir, seleccionar un element i suprimir-lo amb el botó. L'etiqueta, el quadre de llista i el botó estan empaquetats. El bucle d'esdeveniments principal es crea per a l'execució d'aquesta GUI.

#!/usr/bin/python3
de la importació de tkinter *
t = Tk ( )
t.geometria ( '200 x 250' )
l = etiqueta ( t, text = 'Els meus colors preferits...' )
listbox = Listbox ( t )
quadre de llista.inserir ( 1 , 'Blanc' )
quadre de llista.inserir ( 2 , 'Negre' )
quadre de llista.inserir ( 3 , 'Vermell' )
quadre de llista.inserir ( 4 , 'Blau' )
quadre de llista.inserir ( 5 , 'groc' )
b = Botó ( t, text = 'Suprimeix' , commnd = lambda quadre de llista =listbox: listbox.delete ( ÀNCORA ) )
l.pack ( )
listbox.pack ( )
b.pack
t.mainloop ( )

Executem el mateix fitxer després de desar-lo.

La sortida mostra el quadre de llista de 5 elements juntament amb un botó 'Suprimeix'.

Seleccionem l'element del quadre de llista 'Blau' i premem el botó 'Suprimeix'.

L'element seleccionat s'elimina del quadre de llista.

Ara, actualitzem el mateix codi per afegir una funcionalitat addicional. Per tant, a la 3a línia, actualitzem la mida d'una finestra GUI. A la cinquena línia de codi, afegim una definició per a la funció 'showSelected()'. Aquesta funció crida a la funció config() utilitzant l'objecte següent per obtenir el text de l'element seleccionat del quadre de llista 'Lbx'. A la línia 15, el botó crida a la funció showSelected() al seu paràmetre d'ordres.

#!/usr/bin/python3
de la importació de tkinter *
t = Tk ( )
t.geometria ( '400 x 300' )
def showSelected ( ) :
mostrar.config ( text =Lbx.get ( ÀNCORA ) )
l = etiqueta ( t, text = 'Els meus colors preferits...' )
Lbx = Caixa de llista ( t )
Lbx.pack ( )
Lbx.inserció ( 1 , 'Blanc' )
Lbx.inserció ( 2 , 'Negre' )
Lbx.inserció ( 3 , 'Vermell' )
Lbx.inserció ( 4 , 'Blau' )
Lbx.inserció ( 5 , 'groc' )
Botó ( t, text = 'Mostrar seleccionats', commnd=showSelected).pack()
mostrar = Etiqueta (t)
mostrar.pack
t.mainloop()

Executem el codi actualitzat.

Es crea la següent pantalla de Listbox amb el botó 'Mostra la selecció'.

Seleccionem l'element Listbox 'Blanc' i toquem el botó 'Mostrar seleccionats'. El text 'Blanc' es mostra a la pantalla GUI després del botó.

Conclusió

Això és tot sobre l'ús del mòdul Tkinter a Python. Hem afegit un total de 2 exemples senzills de Python per veure com podem utilitzar el Listbox al codi de Python mitjançant la biblioteca Tkinter. Hem vist com es poden utilitzar els diferents ginys per fer que la GUI de Tkinter sigui més interactiva, especialment la creació de Listbox i botons relacionats.