Tkinter – biblioteka skryptów cz. 1

Jeżeli podobają Ci się ćwiczenia. Chcesz aby było ich więcej, dużo więcej! Oddaj głos na któryś z moich wpisów na Stock Overflow! Oto link – wystarczy tylko kliknąć!

 

Tworzenie listy z łańcucha znaków

Mamy łańcucha znaków zawierający rodzaje nawozów sztucznych.

Za pomocą funkcji split możliwe jest z łańcucha znaków zostaje utworzona lista.

nawozy = 'azotowe azotowo-siarkowe azotowo-fosforowe wieloskładnikowe'
print(nawozy)
nawozy = nawozy.split()
print(nawozy)

Wynik kodu:

azotowe azotowo-siarkowe azotowo-fosforowe wieloskładnikowe [‘azotowe’, ‘azotowo-siarkowe’, ‘azotowo-fosforowe’, ‘wieloskładnikowe’]

Tworzenie okna Tkinter

from tkinter import *    #  importuje całą bibliotekę tkinter
okno = Tk()                     # tworze okno
okno.mainloop()                 # Odpalam pętle

 

Wstawianie listy do okna

from tkinter import *
okno = Tk()                     # tworze okno
# tworzę listę
nawozy = 'azotowe azotowo-siarkowe azotowo-fosforowe wieloskładnikowe'
nawozy = nawozy.split()
kontenerek = Listbox(okno)           # Tworzę kontenerek na listę
for item in nawozy:              # Wstawiam do kontenerka kolejne elementy listy
kontenerek.insert(0,item)
kontenerek.pack()                  # pakuje listę nawozów do kontenerka
okno.mainloop()                    # Odpalam pętle

 

wynik kodu:

 

 

Tworzenie dwóch list w oknie Tkinter

 

from tkinter import *           # importuje bibliotekę Tkinter
okno = Tk()                    # tworzę okno tła
# tworze dwie listy z łańcuchów znaków
nawozy = 'azotowe azotowo-siarkowe azotowo-fosforowe wieloskładnikowe'
nawozy = nawozy.split()

zakłady  = 'Tarnów Police Kędzierzyn Puławy'
zakłady = zakłady.split()

kontenerek_nawozy = Listbox(okno)          # tworzę dwa kontenerki na te dwie listy
kontenerek_zakłady = Listbox(okno)
for item in nawozy:                 # wstawiam listy do kontenerków
kontenerek_nawozy.insert(0,item)

for item in zakłady:              # wstawiam listy do kontenerków
kontenerek_zakłady.insert(0,item)

kontenerek_nawozy.pack()                    # uruchamiam kontenerki
kontenerek_zakłady.pack()

okno.mainloop()                 # uruchamiam pętle

 

wynik kodu:

Wstawianie przycisku podpiętego pod funkcję

from tkinter import *                  # importuję bibliotekę Tkinter
def pokaż():                          #definiuje funkcję - drukowanie napisu
print('Witaj kolego!')
okienko = Tk()                             #uruchamiam okno
przycisk = Button(okienko, text = 'kliknij tu', command = pokaż)
#definiuje przycisk, co ma być napisane, podpinam funkcję pod przycisk
przycisk.pack(pady=30, padx = 50)
# uruchamiam wyświeltanie przycisku, przy okazji wskazuje wymiary
# podstawy pod przycisk (wymiary okna dialogowego)
pokaż()
okienko.mainloop()

 

Wynik kodu:

 

Generator liczb losowych

from tkinter import *  # importuje bibliotekę Tkinter
from random import *  # importuje bibliotekę generatora liczb losowych

def liczby_losowe():       # definiuje funkcje generatora liczb losowych
ran = uniform(70, 100) # określam zakres liczb losowych
ran =int(ran)           #wyświetlam tylko liczby całkowite
print(ran)
ran

okienko = Tk()  # uruchamiam okno dialogowe

przycisk = Button(okienko, text='generuj liczbę losową', command=liczby_losowe)
# definiuje przycisk, co jest na nim napisane, z jaką funkcją współpracuje

przycisk.pack(pady=40, padx = 40) #ustalam parametry podstawy przycisku,
# jeżeli nawias bedzie pusty() wtedy podstawa dopasuje sie do wielkości przycisku

okienko.mainloop()  # uruchamiam petle okienka

Wynik kodu to liczba losowa z zadanego zakresu po każdym kliknięciu.

 

Funkcja wyświetlania napisu na oknie dialogowym

from tkinter import *    # importuję bibliotekę Tkinter

def Nacisnąłeś():
napis= Label(okno, text = 'Nacisnąłeś\nprzycisk')
# funkcja mówi, że tekst pojawi się
napis.pack()
button['bg'] = 'blue'   # przycisk po naciśnięciu robi się niebieski
button['fg'] = 'white'  # przycisk przed nacisnięciem jest biały

okno = Tk()                         # odpalam okno
okno.geometry('100x400')     #określam wielkość okna dialogowego
button = Button(okno, text = 'Przycisk', command = Nacisnąłeś)
# definuje co ma się stać po naciśnięciu przycisku
# ma się uruchamiać funkcja Nacisnąłeś
button.pack()  # wyświetlam przycisk

okno.mainloop()  # wyświetlam pętle okna

 

Wyświetlanie listy w okienku dialogowym

from tkinter import *  # This interface allow us to draw windows

def wstaw():
zakłady = ['Puławy', 'Police', 'Tarnów', 'Kędzierzyn']

for item in zakłady:
kontenerek.insert(END, item);
# zdefiniowana funkcja wstawia z elementy z listy

okienko = Tk()  # This creates a window, but it won't show up

kontenerek = Listbox(okienko)
przycisk = Button(okienko, text="lista zakładów", command=wstaw)

przycisk.pack()
kontenerek.pack()  # wyświetlam przycisk i wyświetlam kontenerek

okienko.mainloop()  # This command will tell the window come out

 

wynik