1 / 21

Python – FÖRELÄSNING 3

Python – FÖRELÄSNING 3. Händelsehantering i grafiska gränssnitt byggda med Tkinter. Peter Mozelius DSV. Python – en orm med flera skinn. Det finns flera möjligheter att klä på Python med ett GUI PyQT PyGTK Jython MPY wxPython Tkinter. Tkinter. Vi börjar med att titta på: Tkinter

ovidio
Download Presentation

Python – FÖRELÄSNING 3

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Python – FÖRELÄSNING 3 Händelsehantering i grafiska gränssnitt byggda med Tkinter Peter Mozelius DSV IB910C - Multimediaprogrammering i Python

  2. 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

  3. 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

  4. 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

  5. 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

  6. 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

  7. 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

  8. 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

  9. 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

  10. 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

  11. Paus 15 minuter Multimediaprogrammering i Python

  12. F3_exempel2 • Vi tar nu även en titt på koden: • (finns för nedladdning på kurshemsidan) Multimediaprogrammering i Python

  13. F3_exempel2 • Hur löser vi händelsehanteringen? • Vi vill kunna • Radera och spara text • Stänga ner fönstret Multimediaprogrammering i Python

  14. F3_exempel2 • Slutligen våra funktioner för att radera och spara text: Multimediaprogrammering i Python

  15. 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

  16. Python Imaging Library • Följ installationsprogrammets råd: Multimediaprogrammering i Python

  17. F3_exempel3 • Vi ska nu slutligen ta en titt på exempel3 som har följande grafiska gränssnitt: Multimediaprogrammering i Python

  18. F3_exempel3 • Att läsa in en bild med ImageTk: Multimediaprogrammering i Python

  19. F3_exempel3 • En passande main-funktion: • Innehållet i green.txt *Button.background: Green Multimediaprogrammering i Python

  20. F3_exempel3 • Fixa till grafiken: • Posta gärna lite fler tips om grafiska lösningar inne i Moodles diskussionsfora. Multimediaprogrammering i Python

  21. Tack för idag!! Multimediaprogrammering i Python

More Related