Przykłady Tkintera w Pythonie

Przyklady Tkintera W Pythonie



Python to wszechstronny język programowania, którego można używać do implementowania różnego rodzaju aplikacji. Posiada wiele typów modułów do tworzenia aplikacji opartych na GUI (graficznym interfejsie użytkownika). Jednym z nich jest Python Tkinter. Dowolną aplikację komputerową można łatwo zaimplementować za pomocą modułu tkinter. Lepiej będzie, jeśli posiadasz podstawową wiedzę na temat programowania w Pythonie, aby poznać zastosowania modułu Python tkinter. W tym samouczku pokazano różne zastosowania modułu Python tkinter do tworzenia aplikacji GUI.

Zainstaluj moduł Tkinter

Moduł tkinter nie jest domyślnie instalowany w Pythonie. Musisz więc uruchomić następującą komendę, aby zainstalować moduł tkinter w wersji Python 3+:







$ sudo trafny zainstalować python3-tk



Różne widżety Tkinter

Moduł tkinter zawiera różne widżety do różnych celów.







Nazwa widżetu Zamiar
Etykieta Służy do wyświetlania komunikatu pomocy dla użytkownika.
Przycisk Służy do dodawania różnych przycisków w aplikacji.
Rama Działa jak kontener widżetów, który zawiera różne typy widżetów do projektowania zorganizowanego formularza.
Wejście Służy do pobierania od użytkownika jednowierszowego tekstu.
Przycisk wyboru Służy do dodawania przycisków pól wyboru, aby pobierać od użytkownika wiele danych wejściowych z wielu opcji.
Przycisk radiowy Służy do dodawania przycisków opcji, aby pobrać pojedyncze dane wejściowe od użytkownika z wielu opcji.
Przycisk Comboboxa Służy do dodania listy rozwijanej, w której można pobrać pojedyncze dane wejściowe od użytkownika z wielu opcji.
Skrzynka na listy Służy do dodania pola listy w celu pobrania wielu danych wejściowych od użytkownika z wielu opcji.
Tekst Służy do pobierania od użytkownika wielowierszowego tekstu.
Wiadomość Służy do wyświetlenia okna komunikatu dla użytkownika.
Pasek przewijania Służy do dodania paska przewijania w oknie, aby przewijać okno w górę i w dół.
Przycisk MENU Służy do wyświetlania menu użytkownikowi.
Menu Służy do wyświetlania użytkownikowi pozycji menu.
Okno okienne Działa jak kontener widżetów zawierający panele poziome i pionowe.
Zakładki Służy do dodania okna zakładki w aplikacji.

Różne przykłady Tkintera

W poniższych przykładach pokazano wykorzystanie niektórych popularnych widżetów Tkinter.

Przykład 1: Utwórz prostą aplikację z graficznym interfejsem użytkownika

Utwórz plik Pythona z następującą zawartością, który wyświetli okno dialogowe na środku ekranu z tytułem oraz określoną wysokością i szerokością:



#Importuj niezbędny moduł
z importu Tkinter *

#Utwórz obiekt dla okna
tkobj = Tk ( )

#Ustaw tytuł okna
tkobj.title ( „Naucz się modułu Tkinter” )

#Ustaw wysokość i szerokość okna
tkobj.geometria ( „300x150” )

#Ustaw pozycję wyświetlania okna centralnie
tkobj.eval ( 'tk::PlaceWindow . Centrum' )

#Uruchom Tkintera
tkobj.mainloop ( )

Wyjście:

Po wykonaniu skryptu pojawiają się następujące dane wyjściowe. Wyświetlone zostanie okno dialogowe z tytułem „Naucz się modułu Tkinter”:

Przykład 2: Użycie etykiety i przycisku

Utwórz plik Pythona za pomocą następującego skryptu, który wyświetli okno z etykietą i oknem dialogowym:

#Importuj niezbędny moduł
z importu Tkinter *

#Utwórz obiekt dla okna
tkobj = Tk ( )

#Ustaw tytuł okna
tkobj.title ( „Naucz się modułu Tkinter” )

#Ustaw wysokość i szerokość okna
tkobj.geometria ( „400x150” )

#Zdefiniuj obiekt etykiety
lbl = etykieta ( tkobj, tekst = „To proste okno” )
#Dodaj etykietę do okna
lbl.opakowanie ( ipadx = 30 , iPady = 20 )

#Zdefiniuj obiekt przycisku
btn = przycisk ( tkobj, tekst = 'Kliknij' )
#Dodaj przycisk do okna z pozycją
btn.pack ( ipadx = 30 , iPady = 10 )

#Ustaw pozycję wyświetlania okna centralnie
tkobj.eval ( 'tk::PlaceWindow . Centrum' )

#Uruchom Tkintera
tkobj.mainloop ( )

Wyjście:

Po wykonaniu skryptu na środku ekranu pojawia się okno z etykietą i przyciskiem.

Przykład 3: Ustaw kolor czcionki i kolor tła

Utwórz plik w języku Python za pomocą poniższego skryptu, który wyświetli okno z etykietą i kolorowym przyciskiem. Tutaj atrybut tła służy do ustawiania koloru tła przycisku, a atrybut pierwszego planu służy do ustawiania koloru czcionki przycisku:

#Importuj niezbędny moduł
z importu Tkinter *

#Utwórz obiekt dla okna
tkobj = Tk ( )

#Ustaw tytuł okna
tkobj.title ( „Naucz się modułu Tkinter” )

#Ustaw wysokość i szerokość okna
tkobj.geometria ( „400x150” )

#Zdefiniuj obiekt etykiety
lbl = etykieta ( tkobj, tekst = „Ustaw kolor tła i pierwszego planu” )
#Dodaj etykietę do okna
lbl.opakowanie ( ipadx = 30 , iPady = 20 )

#Zdefiniuj obiekt przycisku z kolorem tła i pierwszego planu
btn = przycisk ( tkobj, tekst = 'Kliknij' , tło = 'niebieski' , pierwszoplanowy = 'czerwony' )
#Dodaj przycisk do okna z pozycją
btn.pack ( ipadx = 30 , iPady = 8 )

#Ustaw pozycję wyświetlania okna centralnie
tkobj.eval ( 'tk::PlaceWindow . Centrum' )

#Uruchom Tkintera
tkobj.mainloop ( )

Wyjście:

Po wykonaniu skryptu pojawia się następujące okno:

Przykład 4: Użycie ramki

W poniższym skrypcie Pythona w widżecie ramki są pokazane etykieta i dwa przyciski. Utwórz plik Pythona ze skryptem, aby sprawdzić dane wyjściowe:

#Importuj niezbędny moduł
z importu Tkinter *

#Utwórz obiekt dla okna
tkobj = Tk ( )

#Ustaw tytuł okna
tkobj.title ( „moduł Tkintera” )

#Ustaw wysokość i szerokość okna
tkobj.geometria ( „250x100” )

#Zdefiniuj obiekty ramki
frm = ramka ( tkobj )
pakiet.frm ( )
lramka = ramka ( tkobj )
lframe.pack ( strona =LEWO )
rframe = ramka ( tkobj )
rframe.pack ( strona =PRAWO )

#Zdefiniuj etykietę wewnątrz ramki
lbl = etykieta ( od, tekst = „Korzystanie z ramki” , fot = 'niebieski' )
lbl.opakowanie ( )

#Zdefiniuj przyciski wewnątrz ramki
btn1 = Przycisk ( ramka, tekst = „” , fot = 'czarny' , bg = 'biały' )
btn2.pack ( strona =PRAWO )

#Ustaw pozycję wyświetlania okna centralnie
tkobj.eval ( 'tk::PlaceWindow . Centrum' )

#Uruchom Tkintera
tkobj.mainloop ( )

Wyjście:

Po wykonaniu skryptu pojawiają się następujące dane wyjściowe:

Przykład 5: Obsługa zdarzenia przycisku

Korzystanie z okna komunikatu pokazano w poniższym skrypcie. Okno komunikatu jest wyświetlane po kliknięciu przycisku:

#Importuj niezbędne moduły
z importu Tkinter *
ze skrzynki wiadomości importu Tkinter

#Utwórz obiekt dla okna
tkobj = Tk ( )

#Ustaw tytuł okna
tkobj.title ( „Naucz się modułu Tkinter” )

#Ustaw wysokość i szerokość okna
tkobj.geometria ( „400x150” )

#Zdefiniuj funkcję wyświetlającą okno komunikatu
zdecydowanie wyświetlacz ( ) :
Messagebox.showinfo ( 'Informacja' , „Przycisk został kliknięty”. )

#Utwórz tekst etykiety z kolorem, stylem i pozycją czcionki
Etykieta ( tkobj, tekst = „Aplikacja komputerowa korzystająca z Tkinter”. , fot = 'zielony' ) .Pakiet ( Niełuskany = 25 )

#Utwórz przycisk za pomocą modułu obsługi przycisków
Przycisk ( tkobj, tekst = 'Pokaż wiadomość' , Komenda =wyświetlacz ) .Pakiet ( )

#Ustaw pozycję wyświetlania okna centralnie
tkobj.eval ( 'tk::PlaceWindow . Centrum' )

#Uruchom Tkintera
tkobj.mainloop ( )

Wyjście:

Po wykonaniu skryptu pojawia się następujące okno:

Po naciśnięciu przycisku pojawia się następujący komunikat:

Przykład 6: Pobieranie danych wejściowych od użytkownika

W module tkinter dostępnych jest wiele widżetów umożliwiających pobieranie danych od użytkownika. Zastosowania najpopularniejszych widżetów pokazano w poniższym skrypcie. Utwórz plik Pythona z następującym kodem, aby sprawdzić dane wyjściowe:

#Importuj niezbędne moduły
z importu Tkinter *
z tkinter.ttk import Combobox
z tkinter import ttk
importuj tkintera Jak tk
ze skrzynki wiadomości importu Tkinter

#Utwórz obiekt Tkinter
tkobj = Tk ( )

#Ustaw tytuł okna
tkobj.title ( „Formularz informacji o użytkowniku” )

#Ustaw wysokość i szerokość okna
tkobj.geometria ( „550x320” )

#Zdefiniuj funkcję wyświetlającą wartości formularza
def wartości_wyświetlane ( ) :
#Czytaj tekst jednowierszowy
imię = 'Nazwa : ' + nazwa_val.get ( ) + ' \N '
#Przeczytaj wybraną wartość przycisku radiowego
Jeśli płeć.get ( ) == 1 :
g = 'Mężczyzna'
w przeciwnym razie:
g = 'Kobieta'
g = 'Płeć : ' + g + ' \N '

#Przeczytaj wybrane wartości pól wyboru
gra = „”
Jeśli g1.get ( ) == 1 :
gra = 'Krykiet'
Jeśli g2.get ( ) == 1 :
Jeśli gra ! = „” :
gra += „”, „ + 'Piłka nożna'
w przeciwnym razie:
gra = 'Piłka nożna'
Jeśli g3.get ( ) == 1 :
Jeśli gra ! = „” :
gra += „”, „ + 'Koszykówka'
w przeciwnym razie:
gra = 'Koszykówka'
gra = 'Gra : ' + gra + ' \N '

#Przeczytaj wartości comboboxa
kraj = 'Kraj : ' + countryVal.get ( ) + ' \N '
#Przeczytaj tekst wielowierszowy
adres = 'Adres : ' + adres.get ( „1,0” , 'koniec' ) + ' \N '
#Scal wszystkie wartości pobrane przez pola
form_values ​​= nazwa + g + gra + kraj + adres
#Wyświetl wartości w oknie komunikatu
Messagebox.showinfo ( „Szczegóły informacji o użytkowniku” , wartości_formularzy )


#Utwórz etykietę i pole nazwy
Etykieta ( tkobj, tekst = 'Nazwa : ' ) .miejsce ( X = 100 , I = 20 )
name_val = StringVar ( )
ttk.Wpis ( tkobj, zmienna tekstowa = nazwa_wartość ) .Pakiet ( Padx = 220 , Niełuskany = 20 )

#Utwórz etykietę i przycisk radiowy
Etykieta ( tkobj, tekst = 'Płeć : ' ) .miejsce ( X = 100 , I = 60 )
płeć = IntVar ( )
zestaw.płci ( 1 )
Przycisk radiowy ( tkobj, tekst = 'Mężczyzna' , zmienny = płeć, wartość = 1 ) .miejsce ( X = 210 , I = 60 )
Przycisk radiowy ( tkobj, tekst = 'Kobieta' , zmienny = płeć, wartość = 2 ) .miejsce ( X = 290 , I = 60 )

#Utwórz etykietę i przycisk pola wyboru
Etykieta ( tkobj, tekst = 'Ulubiona gra : ' ) .miejsce ( X = 100 , I = 100 )
g1 = Zm.międzyst ( )
g2 = Zm.Całkowita ( )
g3 = Zm.międzyst ( )
Przycisk wyboru ( tkobj, tekst = 'Krykiet' , zmienny =g1 ) .miejsce ( X = 210 , I = 100 )
Przycisk wyboru ( tkobj, tekst = 'Piłka nożna' , zmienny =g2 ) .miejsce ( X = 290 , I = 100 )
Przycisk wyboru ( tkobj, tekst = 'Koszykówka' , zmienny =g3 ) .miejsce ( X = 380 , I = 100 )

#Zdefiniuj wartości krotek
dane = ( 'Bangladesz' , 'Japonia' , 'USA' )
#Utwórz etykietę i combobox
Etykieta ( tkobj, tekst = 'Kraj : ' ) .miejsce ( X = 100 , I = 140 )
countryVal = StringVar ( )
Combobox ( tkobj, wartości =dane, zmienna tekstowa =wartość kraju ) .miejsce ( X = 220 , I = 140 )

#Utwórz etykietę i pole tekstowe
Etykieta ( tkobj, tekst = 'Adres : ' ) .miejsce ( X = 100 , I = 180 )
adres = ( tk.Tekst ( tkobj, wysokość = 3 , szerokość = 20 ) )
adres.miejsce ( X = 220 , I = 180 )

#Utwórz przycisk za pomocą modułu obsługi przycisków
Przycisk ( tkobj, tekst = 'Składać' , Komenda =wartości_wyświetlane ) .miejsce ( X = 250 , I = 250 )

#Uruchom Tkintera
tkobj.mainloop ( )

Wyjście:

Po wykonaniu skryptu pojawia się następujące okno:

Wypełnij pola formularza i naciśnij przycisk „Wyślij”.

Pojawi się następujące okno komunikatu z przesłanymi wartościami:

Wniosek

Metody wykorzystania modułu Python tkinter do tworzenia aplikacji GUI zostały pokazane w tym samouczku na wielu przykładach.