Händelsehantering i grafiska gränssnitt byggda med Tkinter Python – FÖRELÄSNING 3 Händelsehantering i grafiska gränssnitt byggda med Tkinter Peter Mozelius DSV IB910C - Multimediaprogrammering i Python
Python – en orm med flera skinn Det finns flera möjligheter att klä på Python med ett GUI PyQT PyGTK Jython MPY wxPython Tkinter Multimediaprogrammering i Python
Multimediaprogrammering i Python Tkinter Vi börjar med att titta på: Tkinter PIL ImageTk Mycket för att Tkinter har blivit en de facto standard för Python Multimediaprogrammering i Python
Fönster och etiketter i Tkinter Mycket lätt att skapa egna fönster: funster = Tkinter.Tk(); Mycket lätt att skapa egna etiketter: etikett = Tkinter.Label(); Mycket lätt att skapa egna knappar: knapp = Tkinter.Button(); Multimediaprogrammering i Python
Ett första litet fönsterprogram Vi sätter nu ihop ett första fönsterprogram med Ett fönster En etikett En knapp Multimediaprogrammering i Python
Multimediaprogrammering i Python F3_exempel1 import Tkinter; ruta = Tkinter.Tk(); halsning = Tkinter.Label(ruta, text='Jag är en Tkinter.Label'); halsning.pack(); knapp = Tkinter.Button(ruta, text='Hej, jag är en knapp', bg='blue', fg='white'); knapp.pack(fill=Tkinter.X); Multimediaprogrammering i Python
Multimediaprogrammering i Python F3_exempel1 Hm.. Varför fungerar inte koden på den förra bilden. Vad har vi glömt? Tkinter.mainloop(); Visar huvudfönstret i en loop som kan ta emot och hantera händelser Multimediaprogrammering i Python
Multimediaprogrammering i Python Tkinter.Text En annan grafisk komponent i Tkinter som kan hantera text är Text Lägg in text med funktionen insert() Ta bort text med funktionen delete() Hämta text med funtionen get() Multimediaprogrammering i Python
Multimediaprogrammering i Python Att spara text till fil Vi talade i förra föreläsningen om persistens Så här kan vi spara ner information mellan programkörningar i Python Multimediaprogrammering i Python
Multimediaprogrammering i Python Händelsehantering Så här kan vi koppla funktionen spara() från den föregående bilden till en knapp: Vi tar nu en titt på F3_exempel 2 Multimediaprogrammering i Python
Multimediaprogrammering i Python Paus 15 minuter Multimediaprogrammering i Python
Multimediaprogrammering i Python F3_exempel2 Vi tar nu även en titt på koden: (finns för nedladdning på kurshemsidan) Multimediaprogrammering i Python
Multimediaprogrammering i Python F3_exempel2 Hur löser vi händelsehanteringen? Vi vill kunna Radera och spara text Stänga ner fönstret Multimediaprogrammering i Python
Multimediaprogrammering i Python F3_exempel2 Slutligen våra funktioner för att radera och spara text: Multimediaprogrammering i Python
Multimediaprogrammering i Python Bilder med ImageTk För att kunna använda ImageTk och dess funktioner så behöver vi först hämta med och installera PIL (Python Imaging Library) Finns för nedladdning på: http://www.pythonware.com/products/pil/ The PIL handbook: http://www.pythonware.com/library/pil/handbook/ Multimediaprogrammering i Python
Python Imaging Library Följ installationsprogrammets råd: Multimediaprogrammering i Python
Multimediaprogrammering i Python F3_exempel3 Vi ska nu slutligen ta en titt på exempel3 som har följande grafiska gränssnitt: Multimediaprogrammering i Python
Multimediaprogrammering i Python F3_exempel3 Att läsa in en bild med ImageTk: Multimediaprogrammering i Python
Multimediaprogrammering i Python F3_exempel3 En passande main-funktion: Innehållet i green.txt *Button.background: Green Multimediaprogrammering i Python
Multimediaprogrammering i Python F3_exempel3 Fixa till grafiken: Posta gärna lite fler tips om grafiska lösningar inne i Moodles diskussionsfora. Multimediaprogrammering i Python
Multimediaprogrammering i Python Tack för idag!! Multimediaprogrammering i Python