Seite 1 von 1

Tkinter wird nicht gefunden

Verfasst: Montag 28. September 2015, 13:59
von PeterN
Liebes Forum,
bin noch Anfänger im Umgang mit python; benutze python2.7.5. Habe ein einfaches Beispielsprogramm abgeschrieben:

Code: Alles auswählen

from Tkinter import *
HEIGHT = 500
WIDTH = 800
window = Tk()
window.title('Bubble Blaster')
c = Canvas(window, width=WIDTH, height=HEIGHT, bg='darkblue')
c.pack()
Es passiert aber nichts. Eigentlich sollte sich ein Fenster mit blauem Hintergrund bilden.
Wenn ich tkinter (mit Kleinschreibung benutze, bekomme ich eine Fehlermeldung über ein fehlendes Modul). In der Version 2.7 muss man den Aufruf von tkinter im Gegensatz zu python 3 wohl klein schreiben.
Fehlt mir das Modul tkinter?
LG Peter

Re: Tkinter wird nicht gefunden

Verfasst: Montag 28. September 2015, 14:28
von sparrow
Unter Python 2.x wird Tkinter import, bei Python 3 hat sich das auf tkinter geändert.
Wenn du ein Linux verwendest, wird Tkinter nicht zwagsläufig mit installiert. Such mal nach einem Paket "python-tk" oder "python-tkinter" und installiere das. Die genaue Bezeichnung hängt von deiner Distribution ab.

Re: Tkinter wird nicht gefunden

Verfasst: Montag 28. September 2015, 14:39
von BlackJack
@PeterN: Ich denke es passiert schon etwas aber zu schnell das Du es sehen kannst, denn es fehlt am Ende der Aufruf von ``window.mainloop()``.

Den Sternchenimport solltest Du übrigens gleich wieder vergessen und stattdessen ``import Tkinter as tk`` verwenden und dann die Namen über das Modul referenzieren, also zum Beispiel ``tk.Canvas(…`` statt nur ``Canvas(…``. Mit dem Sternchen holt man sich sonst nämlich an die 190 Namen in das Modul von denen man nur einen ganz kleinen Bruchteil verwendet.

Re: Tkinter wird nicht gefunden

Verfasst: Montag 28. September 2015, 14:46
von Alfons Mittelmeyer
Also tkinter klein in python 3.x aber groß Tkinter in python 2.x. Und das Modul fehlt Dir nicht, weil Du sonst beim import eine Fehlermeldung bekommen hättest.

Du solltest nicht vergessen das am Ende zu schreiben:

Code: Alles auswählen

window.mainloop()
Sonst passiert nämlich nichts