28 grudnia 2017

Python – Pierwsza aplikacja „okienkowa”

Hej, dziś napiszę jak wykonać pierwszą aplikację opartą o okna, niezależną od systemu. Aplikacja nie będzie robiła na początku nic! Poza wyświetleniem prostego tekstu.

Na wstępie należy zaimportować moduł tkinter

from tkinter import *

Dzięki takiej metodzie importowania modułu, odwołanie się do jego klas nie musi zostać poprzedzone przedrostkiem, ułatwi to nam pisanie całego programu.

Tworzymy teraz okno i ustawiamy mu tytuł oraz wymiary:

root = Tk()
root.title('Okno')
root.geometry("800x300")

Gdybyśmy na początku wpisali „import tkinter” powyższy kod musiał by wyglądać troszkę inaczej, odwołanie do klasy Tk() musiało by wyglądać w sposób taki: „tkinter.Tk()”.

Aby w naszym oknie móc ustawić elementy (widgety), musimy stworzyć wcześniej ramkę w której owe elementy ulokujemy:

app = Frame(root)
app.grid()

Do kontrolera klasy Frame podajemy obiekt root, czyli Frame stworzymy wewnątrz elementu root (naszego okna).

Funkcja grid odpowiada za wyświetlenie elementów w oknie, może przyjąć parametry odpowiedzialne za ich układ.

lab = Label(root)
lab.configure(text="Hej tkinter!")
lab.grid()


root.mainloop()

Powyższy kod tworzy nam element label wewnątrz okna root, następnie modyfikujemy go ustawiając jego treść równą „Hej tkinter!”, można ten parametr podać od razu przy tworzeniu elementu. Element wyświetlamy dzięki funkcji grid.

Na końcu dodajemy root.mainloop(), jest to pętla zdarzeń.