Tkinter wprowadzenie
Tkinter to standardowy pythonowy moduł do tworzenia aplikacji z graficznym interfejsem użytkownika.
Zalety:
- Dostępny w podstawowej instalacji Pythona.
- Przenośny, programy napisane w nim działają na różnych systemach operacyjnych (Windows, Linux, Mac). Nie trzeba instalować dodatkowych bibliotek tak jak w przypadku np PyGTK.
- Niewielki rozmiar.
- Szybki, aplikacje uruchamiają się stosunkowo szybko i są bardzo responsywne.
- Łatwy do nauki.
- Standardowo posiada dość rozbudowany widget przeznaczony do rysowania.
Wady:
- Mała ilość widgetów. Jeśli chcemy użyć np comboboxa musimy doinstalować rozszerzenie (Tix lub Pmw).
- Surowy wygląd. Aplikacje z interfejsem w Tkinterze odbiegają wyglądem od natywnych aplikacji na danej platformie.
Przykładowy program:
# Importujemy moduł
from Tkinter import *
# Tworzymy główny widget
root = Tk()
# Tworzymy przycisk, który będzie umieszczony, na widgedzie root
# ustawiamy tekst przycisku na "Hello, world!"
# parametr command określa co się stanie, gdy przycisk zostanie wciśnięty
# w tym przypadku zostanie uruchomiona metoda quit głownego widgetu,
# czyli program zakończy swoje działanie.
# Nic nie stoi na przeszkodzie aby wartością parametru command była funkcja/metoda
# napisana przez nas.
w = Button(root, text="Hello, world!", command=root.quit)
# Metoda pack widgetu mówi mu aby dopasował swój rozmiar do tekstu który zawiera,
# oraz żeby stał się widoczny
w.pack()
# Uruchamiamy główną pętle programu, dopiero po wykonaniu się tej linii kodu zobaczymy interfejs
root.mainloop()
Efekt działania powyższego kodu
Niechce przepisywać, tutoriali ani dokumentacji (których jest naprawdę dużo), ponieważ byłoby to stratą czasu, dlatego na tym zakończe.
Spis przydatnych linków dla osób zainteresowanych tematem:
- Tkinter na oficjalnej stronie Pythona.
- Tutorial i dokumentacja.
- Wiki, sporo przykładów i gotowych rozwiązań.
- Strona rozszerzenia Pmw.
- Dokumentacja rozszerzenia Tix.
Komentarze:
pagenoare
commented, on June 5, 2008 at 4:59 p.m.:
No, no no :) Rzeczywiście to wymiata :) Dużo łatwiej napisać cokolwiek w GUI wykorzystując to. Dzięki i lądujesz w RSSach ;-)