tkinter,bilder und unterprogramme

Fragen zu Tkinter.
VAIVS
User
Beiträge: 2
Registriert: Freitag 26. Januar 2007, 18:27

tkinter,bilder und unterprogramme

Beitragvon VAIVS » Samstag 27. Januar 2007, 09:56

hallo,

ich schreibe ein programm wo man mit drücken der 'a' taste ein fenster mit einem bild erscheinen soll.das problem ist ,dass ich immer diese fehlermeldung bekomme wenn ich auf die 'a' taste drücke:

[code=]Exception in Tkinter callback
Traceback (most recent call last):
File "D:\Programme\python\lib\lib-tk\Tkinter.py", line 1403, in __call__
return self.func(*args)
File "C:/Dokumente und Einstellungen/Salva/Eigene Dateien/Info/Python/Projekte/Yu-Gi-Oh_SimulatorV4/testsimulator.pyw", line 13, in abc
bild_token = Label(frame_t, image=ph_token)
File "D:\Programme\python\lib\lib-tk\Tkinter.py", line 2464, in __init__
Widget.__init__(self, master, 'label', cnf, kw)
File "D:\Programme\python\lib\lib-tk\Tkinter.py", line 1930, in __init__
(widgetName, self._w) + extra + self._options(cnf))
TclError: image "pyimage7" doesn't exist[/code]

Hier ist das programm. ich hoffe ihr könnt mir weiterhelfen.

Code: Alles auswählen

from Tkinter import *
from PIL import Image, ImageTk

def abc(event):
   
       hf_t = Tk()
       frame_t = Frame(hf_t)
       frame_t.pack()
   
       im_token = Image.open('tokus.jpg')
       ph_token = ImageTk.PhotoImage(im_token)

       bild_token = Label(frame_t, image=ph_token)
       bild_token.pack()

       hf_t.mainloop()

hf = Tk()
frame = Frame(hf)
frame.pack()
frame.bind_all('a', abc)
hf.mainloop()
BlackJack

Beitragvon BlackJack » Samstag 27. Januar 2007, 10:35

Zwei Fehler: `Tk` ist immer der Typ vom Hauptfenster und davon darf es nur eines geben, und `mainloop()` heisst *Haupt*schleife ─ davon darf es auch nur eine geben.

Zusätzliche Fenster kann man mit der Klasse `Toplevel` erstellen.

Was sollen denn die `*_t` in den Namen in der `abc()`-Funktion bedeuten?
VAIVS
User
Beiträge: 2
Registriert: Freitag 26. Januar 2007, 18:27

danke

Beitragvon VAIVS » Samstag 27. Januar 2007, 12:06

danke, für die hilfe. jetzt klappt das endlich.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder