Py_wewnętrzne notatki_1: Tkinter część.1 -Prywatne

 Okno dialogowe w Gui Tkinter 

https://www.youtube.com/watch?v=1mNCq7PUthw Aby stworzyć okno dialogowe w w Gui Tkinter należy najpierw importować ten moduł używając instrukcji import. Dzięki stworzeniu własnych manu i okien dialogowych Python przestaje być tylko kodem a zaczyna być programem użytkowym. Poniższy kod tworzy najprostszą ramkę okna dialogowego.
from tkinter import *           # <-- import bibliotek tkinter
okienko = Tk()                  # <-- tworzenie okna
etykieta = Label(okienko,text = "moje menu")
etykieta.pack()                  # <-- komenda powodująca pojawienie się okna
okienko.mainloop()               # <-- nieskończona pętla, w której działa program
  W wyniku uruchomienia kodu powinna ukazać się ramka z napisem: "moje pierwsze okno dialogowe".

 Kolejny przykład 

 
from tkinter import *
okienko = Tk()

topFrame = Frame(okienko)
topFrame.pack()
bottomFrame = Frame(okienko)
bottomFrame.pack(side = BOTTOM)

przycisk1 = Button(topFrame,text = "Przycisk 1", fg = "red")
przycisk1.pack(side = LEFT)

przycisk2 = Button (topFrame, text = "Przycisk 2", fg = "green")
przycisk2.pack(side = BOTTOM)

przycisk3 = Button (topFrame, text = "Przycisk 3", fg = "black")
przycisk3.pack(side = TOP)

przycisk4 = Button (bottomFrame, text = "Przycisk 4", fg = "green")
przycisk4.pack()

okienko.mainloop()
  źródło: Kurs Python 3 - lekcja 26 - Gui Tkinter - Ramki i przyciski; TechAkademiaPL https://www.youtube.com/watch?v=u0BF4ZR8bvk

 Przykład trzeci 

   
from tkinter import *
okienko = Tk()

etykieta1 = Label(okienko, text = "etykieta 1", bg = "green")
etykieta1.pack()          # <-- Do uruchopmienia, 
                          # materializacji nalepki, labela

etykieta2 = Label(okienko, text = "etykieta 2", bg = "yellow")
etykieta2.pack(fill = X)   # <-- Kiedy jest fill = X wtedy cała pozioma 
                            #oś jest wypełniona, to samo dotyczy przycisków

etykieta3 = Label(okienko, text = "etykieta 3", bg = "red")
etykieta3.pack(side = LEFT, fill = Y)     # <-- przy Y musi być określona 
                                            # strona lewa albo prawa.
                            #  To samo, etykieta przesunięta 
                             # do lewej i wypełniona cała pionowa przestrzeń

okienko.mainloop()          # <-- wieczna pętla
 

 Tworzenie prostego przycisku z przypisana funkcją – sposób 1 

https://www.youtube.com/watch?v=UebKpTKdo6s    
from tkinter import *     # <-- import
okno = Tk()               
# <-- uruchamiamy funkcje tworzenia okien

def wypisz():                          
# <-- definiuje funkcję
    print("Moja działająca funkcja!")  
# <-- definiuje funkcję

przycisk = Button(okno, text = "kliknij mnie!", command = wypisz) 
# <-- Definiuje przycisk
przycisk.pack()                                                   
# <-- materializuje przycisk

okno.mainloop()       
# <-- wieczna pętla



Po naciśnięciu drukuje się komunikat: 
Moja działająca funkcja!
Moja działająca funkcja!
Moja działająca funkcja!
Moja działająca funkcja!







 Tworzenie prostego przycisku z przypisana funkcją – sposób 2 
https://www.youtube.com/watch?v=UebKpTKdo6s  
from tkinter import *       # <-- import
okno = Tk()                 
# <-- uruchamiamy funkcje tworzenia okien

def wypisz(jakieś_zdarzenie):            
# <-- definiuje funkcję, przy tym sposobie trzeba
# tu wpisać coś, jakieś zdarzenie - przy sposobie 2
    print("Moja działająca funkcja!")    
# <-- definiuje funkcję

przycisk = Button(okno, text = "kliknij mnie!")  
# <-- Definiuje przycisk
przycisk.bind("<Button-1>", wypisz)      
# <-- materializuje przycisk,
# <Button-1> to lewy przycisk myszy,
# <Button-3> to prawy przycisk myszy
# <Button-2> środkowy przycisk myszy
przycisk.pack()            
# <-- materializuje przycisk
okno.mainloop()            
# <-- wieczna pętla

 
Po naciśnięciu drukuje się komunikat: 
Moja działająca funkcja! 
Moja działająca funkcja! 
Moja działająca funkcja! 
Moja działająca funkcja!