Finestra di dialogo del file tkinter

Finestra di dialogo del file tkinter
Mentre si lavora nel sistema operativo di Windows, è possibile che si provi a recuperare i file da diverse directory di lavoro utilizzando la finestra di dialogo del file come ad esempio, quando si desidera caricare qualche file sul Web o alcuni file da importare nel software. Queste finestre di dialogo dei file sono molto comuni anche tra gli utenti di Linux. Ma hai mai provato un codice per creare una finestra di dialogo? Se non ancora, non preoccuparti. Discuteremo l'uso del modulo Python Tkinter per creare una finestra di dialogo in un'interfaccia GUI di Tkinter mentre si lavora in Ubuntu 20.04 Ambiente Linux. Iniziamo questo articolo con il lancio dell'applicazione del terminale in Ubuntu 20.04 Sistema.
$ sudo apt update

Dopo l'aggiornamento riuscito, devi assicurarti che il modulo Tkinter di Python sia già configurato alla fine prima di usarlo all'interno dello script Python. Se non è ancora configurato, prova a utilizzare le seguenti istruzioni di installazione APT con la parola chiave Python3-TK. Puoi vedere che è già installato.

$ sudo apt Installa python3-tk

Esempio 1:

Ora che il modulo Tkinter è installato correttamente, lo useremo nel nostro codice Python per creare una finestra di dialogo per selezionare un singolo file dalla directory di lavoro corrente del nostro sistema Linux. Creiamo un nuovo file Python chiamato "Nuovo.Py ”nella directory di lavoro attuale prima e aprilo all'interno dell'editor di testo per salvare il nostro tempo. Importiamo tutte le sottoclassi del modulo Tkinter nel nostro codice Python in prima riga utilizzando la parola chiave "Importa" seguita dal segno "*".

Successivamente, importiamo l'istanza di classe FilentILOG dal modulo Tkinter alla seconda riga. Chiamiamo il costruttore di classe TK () per ottenere il suo oggetto in una variabile "T". Usiamo la variabile "T" per chiamare la funzione geometria di un pitone per impostare la dimensione per la generazione di una finestra GUI. Lo stesso oggetto "T" viene utilizzato per creare un nome file variabile che ottiene il nome di un file selezionato dalla finestra di dialogo del file tramite l'istanza FiliEdialog.

Utilizziamo la funzione AskOPenFileName () della classe FiliEDialog per impostare la directory iniziale per la creazione della finestra di dialogo del file e il titolo come "Seleziona file". Utilizziamo l'attuale directory di lavoro del nostro sistema come valore per il parametro "InitialDir". Il nome file viene salvato nella variabile "nome file" e l'etichetta "L" viene creata utilizzando la funzione etichetta () del python tkinter. È etichettato con la variabile dell'oggetto "t" con il testo "Il file selezionato è:" concatenato con un nome file con una famiglia di carattere di corriere esatta di 11. L'etichetta è confezionata () e l'esecutore MainLoop () viene chiamato per lanciare i widget Tkinter.

Dopo aver salvato l'intero codice Python contenente un widget di dialogo file tkinter, lo eseguiamo con la query Python3 come mostrato nella seguente:

$ python3 nuovo.Py

In un po ', viene visualizzata una finestra di dialogo File nella nostra schermata terminale come una GUI Tkinter denominata "Seleziona file". Per espandere la sua area, otteniamo alcuni file Python e Bash.

Per selezionare un file, fare clic su di esso e toccare il pulsante "Apri" come abbiamo fatto nella seguente dimostrazione:

Dopo la selezione di un file Python dalla finestra di dialogo del file, siamo indirizzati alle finestre della GUI principale di Tkinter in cui ci viene mostrato il percorso del file che è stato selezionato.

Esempio 2:

Ora creeremo un nuovo programma che selezionerà più file dalla finestra di dialogo del file tkinter. Per questo, lanciamo lo stesso file Python e l'intero codice aggiornato. Lo avviciniamo con l'importazione del modulo Tkinter come "TK" e l'oggetto TTK dal tkinter, quindi, importiamo l'istanza della classe di dialogo del file come "F" dal modulo Tkinter e la classe della casella di messaggio di Tkinter. Importiamo la funzione showinfo ().

L'oggetto "TK" chiama la funzione del costruttore TK () per archiviare la sua istanza nella variabile "T". La variabile "T" viene utilizzata per aggiungere un titolo per una finestra di dialogo File da creare tramite la funzione "Titolo". Chiamiamo la funzione ridimensionabile di Tkinter per impostare il ridimensionamento su false. La dimensione di una finestra di dialogo è invariata. La stessa variabile "t" viene utilizzata per chiamare la funzione geometry () per impostare la dimensione esatta di un'interfaccia GUI da creare.

La funzione "Files ()" viene creata con l'inizializzazione di "tipi" variabili per impostare i tipi di file da selezionare, sia txt che tutti i tipi. La funzione AskOPenFileNames () viene utilizzata per indicare la finestra di dialogo del file, inizializzare la directory e impostare i filetipi da selezionare. Salva il risultato in una variabile "nomi" tramite l'oggetto "F" della classe FiliEDialog. La funzione showinfo () è chiamata per titolo la finestra che mostra i file scelti tramite il parametro del messaggio. Il pulsante denominato "Apri file" viene utilizzato nella prima finestra della GUI per chiamare la funzione "file" per creare una finestra di dialogo e selezionare più file.

Dopo aver salvato il codice, lo eseguiamo.

$ python3 nuovo.Py

La GUI denominata "Finestra di dialogo File" viene visualizzata con il pulsante "Apri file". Fai clic su di esso per aprire la finestra di dialogo.

La finestra di dialogo denominata "aperta" è aperta. Naviga nella cartella specifica.

Seleziona più file toccandoli uno per uno e facendo clic sul pulsante Apri.

Tutti e tre i file vengono visualizzati sulla GUI dei file scelti di Tkinter. Tocca "OK" per chiuderlo.

Conclusione

Riguarda l'uso del modulo tkinter di Python in Linux per generare un dialogo file in una GUI di un tkinter. Abbiamo provato due diversi esempi per creare una finestra di dialogo File in Tkinter GUI. Abbiamo discusso di come un singolo file o più file possono essere scelti dalla directory tramite la finestra di dialogo del file utilizzando script diversi.