• Keine Ergebnisse gefunden

Informatik Klasse 13, Foliensatz 8 Applikationsfenster

N/A
N/A
Protected

Academic year: 2021

Aktie "Informatik Klasse 13, Foliensatz 8 Applikationsfenster"

Copied!
10
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Informatik Klasse 13, Foliensatz 8 Applikationsfenster

Prof. G. Kemnitz

Institut für Informatik, Technische Universität Clausthal 17. November 2009

Prof. G. Kemnitz·Institut für Informatik, Technische Universität Clausthal 17. November 2009 1/10

(2)

Hauptfenster

Applikation mit einem Hauptfenster from Tkinter import * root = Tk()

# Erzeugung des Fensterinhalts als Kinder von root ...

root.mainloop()

Applikationen mit mehreren Hauptfenstern from Tkinter import *

root = Tk()

# create root window contents...

top = Toplevel()

# create top window contents...

root.mainloop()

für Hauptfenster gibt es keine Anordnungsmethoden (pack(), grid() etc.)

·

(3)

Pulldown-Menüs

Menüs sind Widget-Objekte mit speziellen Attributen und Methoden:

hinzufügen eines Menüeintrags

add_command(label=Name, command=Funktionaufruf) einfügen einer Trennlinie

add_separator()

einfügen eines Menüobjekts als Untermenü add_cascade(label=Name, menu=Menüobjekt)

Prof. G. Kemnitz·Institut für Informatik, Technische Universität Clausthal 17. November 2009 3/10

(4)

Experiment

from Tkinter import * def callback():

print "called the callback!"

root = Tk()

# create a menu menu = Menu(root) root.config(menu=menu) filemenu = Menu(menu)

menu.add_cascade(label="File", menu=filemenu) filemenu.add_command(label="New", command=callback) filemenu.add_command(label="Open...", command=callback) filemenu.add_separator()

filemenu.add_command(label="Exit", command=callback) helpmenu = Menu(menu) menu.add_cascade(label="Help",

menu=helpmenu)

helpmenu.add_command(label="About...", command=callback) mainloop()

·

(5)

Toolbar mit Icons

eine Toolbar ist eine Leiste aus Button oder Labeln

Button und Label haben auch Attribute zur Darstellung von Bildern (bitmap – zweifarbiges Bitmap-Objekt; image – mehrfarbiges PhotoImage-Objekt)

from Tkinter import * root = Tk()

Label(root, bitmap="question").pack(side=LEFT) Label(root, bitmap="@smile.xbm").pack(side=LEFT) Bildobjekt=PhotoImage(file="ichess.gif")

Label(root, image=Bildobjekt).pack(side=LEFT) mainloop()

Bitmaps können vordefiniert Objekte oder xbm-Dateien sein Bildobjekte haben die Klasse »PhotoImage()« (in Tkinter definiert); Konstruktor akzeptiert nur Dateien mit den Bildformaten »gif«, »pgm und »ppm«

Prof. G. Kemnitz·Institut für Informatik, Technische Universität Clausthal 17. November 2009 5/10

(6)

vordefinierte Bitmap-Objekte: error, gray75, gray50, gray25, gray12, hourglass, info, questhead, question, and warning

Vorder- und Hintergrundfarbe mit den Attributen »fg« und

»bg« einstellbar

Suche von Bitmaps und Bilddateien auf dem Rechner locate /*.xbm

locate /*.gif

·

(7)

Vorschläge für Programmierprojekte

Im nächsten Halbjahr sollen größere Programmieraufgaben durchgeführt werden. Die weiteren zu behandelnden Themen richten sich nach den beabsichtigten Aufgabenstellungen.

Vorschläge:

Texteditor, Graphik-Editor

Vokabeltrainer oder ähnliche Datenbankanwendungen Datei-Manager oder andere Werzeuge für die

Linux-Systemverwaltung einfache Computer-Spiele

Animationen, z.B. für stochastische Prozesse, Such- und Sortieralgorithmen

Web-Seiten-Generatoren andere Vorschläge?

Prof. G. Kemnitz·Institut für Informatik, Technische Universität Clausthal 17. November 2009 7/10

(8)

Geplante weiterführende Themen

Standard-Dialoge, Abfangen von Eingabefehlern (catch, try) Canvas (Zeichenfeld-Objekt)

CheckButton, Radio-Button, StringVar Scroll-Bars

Treads und Timer

·

(9)

Aufgabe 8.1: Menü

Entwerfen Sie für eine selbst gewählte Aufgabe eine Oberfläche mit Menüs und Untermenüs. Bei der Auswahl eines

Menü-Punktes soll im Terminal eine Beschreibung der beabsichtigten Funktion ausgegeben werden.

Prof. G. Kemnitz·Institut für Informatik, Technische Universität Clausthal 17. November 2009 9/10

(10)

Aufgabe 8.2: Toolbar

Suchen Sie sich aus dem Web, z.B. unter

http://www.iconarchive.com oder mit locate auf ihrem Rechner Bilder als Icons und entwerfen Sie damit eine Werkzeugleiste. Bei Betätigung der Icons soll im Terminal eine Beschreibung der beabsichtigten Funktion ausgegeben werden.

Hinweis: Die Umwandlung in andere Bildformate kann z.B. mit gimp Bilddateiname

und Abspeicherung in einem anderen Format erfolgen.

·

Referenzen

ÄHNLICHE DOKUMENTE

Das Elternobjekt ist das erste Argument im Konstruktor alle anderen Argumente im Konstruktor sind Attribute des Widget, den Werte zugeordnet werden, z.B.

Erweiterung Sie die Klasse aus der Aufgabe zuvor um eine Methode, die für alle Label die Textfarbe zwischen schwarz und rot umschaltet, und einen Button, der diese Methode

Erzeugen Sie jeweils eine solche Textdatei für ein Objekt der Klasse Frame, der Klasse Entry und der Klasse Label. Vergleichen Sie

Schreiben Sie eine Textverarbeitungsanwendung mit folgender Oberfläche, bei der eingegebene Text nach Betätigung der Eingabetaste an den Text des Message-Objekts oben angehängt

Schreiben Sie eine Appliktion mit einem Tastenfeld aus vier Labeln mit den Beschriftungen »A« bis »D«, bei dem zum Programmstart die erste Taste mit »relief=SUNKEN« und die übrigen

Oberfläche, das bei einem Maus-Klick ein regelmäßiges Polygon mit dem Maus-Zeiger als Mittelpunkt, einer zufällig ausgewählten Eckenanzahl n im Bereich von 3 bis 10, einem

Das aufgerufene Unterprogramm startet immer wieder einen neuen Timer; beenden mit ctrl-c.. Kemnitz · Institut für Informatik, Technische Universität

Bellman-Ford-Algorithmus Das Beispiel ist aber komplexer als die Realität bei IP Die Wegkosten zum Zielnetz hängen bei IP ausschließlich von der Anzahl der Router ab, die auf dem