Quanto difficile è la progettazione di una GUI in Python?

May 23

Quanto difficile è la progettazione di una GUI in Python?


Scrivere un programma Python che utilizza una interfaccia grafica utente (GUI) per l'interazione utente comporta l'uso le librerie incluse che vengono con il linguaggio Python. Utilizzando queste librerie speciali, Python interagire con il sistema operativo di presentare finestre, pulsanti e gestori di eventi per rilevare ciò che un utente sta facendo con la tastiera e il mouse. Imparando alcuni metodi chiave, un programmatore non troverà Python lo sviluppo di GUI difficile sorta.

Tkinter

Le librerie Tikinter contengono il codice e metodi per iniziare a creare interfacce GUI in Python. Qualsiasi programma che desiderano contenere elementi GUI deve importare la libreria Tkinter:

from Tkinter import *

Poi, utilizzando la libreria comporta invocando un widget root (o finestra), che è la radice di tutti gli altri widget creati durante il programma:

root = Tk ()

Qualsiasi altra finestra / widget deve seguire il widget di root. A questo punto, il programmatore può manipolare "root" finestra utente semplice sa (completo con le decorazioni fornite dal sistema operativo in uso).

Manipolazione di una finestra

Per creare una finestra con una dimensione gestibile, o una finestra che contiene un messaggio, metodi come la "Label":

w = Label (root, text = "Ciao")

w.pack ()

root.geometry ( '200x200')

Il metodo Label crea il testo "Ciao" e lo mette nella finestra "root", e le "confezioni" finestra intorno al testo (in modo che la finestra non si ri-formato più piccolo rispetto al testo. Il metodo di geometria (una interna metodo per finestre, come radice) determina la dimensione inizio della finestra di 200 pixel per 200 pixel.

pulsanti

A fianco del testo, un programmatore può facilmente includere pulsanti nel programma:

from Tkinter import *

importazione tkMessageBox

root = Tk ()

b = Button (root, text = "Ciao", il comando = PrintButton)

b.pack ()

radice.mainloop ()

La finestra principale ora avrà un pulsante, piuttosto che solo testo. Il pulsante conterrà il testo "Hi" ed eseguire i comandi definiti nel metodo creato dall'utente "PrintButton". Se il metodo PrintButton è definito per eseguire una finestra di messaggio come in questo esempio:

tkMessagBox.showinfo ( "Nuova Finestra", "HI")

Poi nuova finestra pop-up, visualizzazione dei parametri di "tkMessageBox.showinfo".

Deposizione un'altra finestra

Supponiamo che invece di aprire una finestra di messaggio (che mostra solo un avvertimento o un messaggio), il programmatore ha cambiato il tasto "Hi" per aprire una nuova finestra simile al primo (Fonte 1). Ciò richiederebbe una modifica del codice PrintButton a somigliare a qualcosa di simile a questo esempio (ricordando di rientro dopo il nome della funzione):

DEF PrintButton ():

window = Tk ()

T = Button (finestra, text = "Hi2", il comando = window.destroy)

T.pack ()

Ora, cliccando sul bottone "Hi" deporrà le uova una nuova finestra ( "finestra") contenente un altro pulsante ( "Hi2"). Il pulsante Hi2, una volta cliccato, chiuderà la finestra.

Facilità d'uso

La difficoltà inerente utilizzando la libreria Tkinter è simile ad usare altre librerie Python. Mastering cosa Tkinter ha da offrire richiede che un programmatore trascorrere del tempo imparando i metodi e come essi vengono utilizzati nella pratica. Inoltre, al di là del campo di applicazione effettiva, l'elemento progettazione di qualsiasi applicazione GUI non rientra nell'ambito di una discussione di attuazione codice di base. Tuttavia, le librerie Tkinter non sono di per sé oscuri o esoterico, e studiare la sintassi di Tkinter renderanno la progettazione di applicazioni GUI in Python relativamente facile.