# -*- coding: utf-8 -*-
from Tkinter import*
def vybersoubor():
#####zisk n?zvu fileu
import tkFileDialog as dial
nazev = dial.askopenfilename()
print nazev
#####vlozeni do vstupniho pole
vstup.insert(0,nazev)
print "Obsah vstupniho pole: ", vstup.get()
def vypisZip():
import zipfile
ZipObjekt=zipfile.ZipFile(vstup.get())
vypis = ZipObjekt.namelist()
print ZipObjekt.namelist()
####okna
hlavni = Tk()
ramecek1 = Frame(hlavni)
ramecek1.pack()
vstup = Entry(ramecek1, font="Arial 11")
vstup.pack(side=LEFT)
prochazet = Button(ramecek1, text="...", command=vybersoubor)
prochazet.pack(side=RIGHT)
done = Button(hlavni, text = "OK!", command = vypisZip)
done.pack(fill=BOTH)
#### konec oken
hlavni.mainloop()
#### podokno
podokno=Toplevel(hlavni) # Toplevel je ud?l?tko nov?ho podokna
x=Label(podokno, text=vypis) # tohle ji? zn?me
x.pack()
podokno.mainloop()
V tomhle k?du, kter? je ?e?en?m ?kolu z 12. lekce stane chybka p?i vol?n? Toplevel.
Error "zn?" takto:
Traceback (most recent call last):
File "C:Documents and Settings...(zbytek adresy skriptu)vypis_zip.py, line 43 , in ?
podokno = Toplevel(hlavni)
File "C:Python2liblib-tkTkinter.py" line 1906, in __init__
BaseWidget.__init__(self, master, ""toplevel", cnf, {}, extra)
File "C:Python2liblib-tkTkinter.py" line 1862, in __init__
self.tk.call(
_tkinter.TclError: can't invoke "toplevel" command: application has been destroyed
Pr?b?h aplikace se zd? b?t bezprobl?mov?, vysko?? na m? okno, do kter?ho zad?m *.zip kter? se printem vyp??e v Python shellu ale u? se neotev?e okno s v?sledkem a po zav?en? "zad?vac?ho okna" mi to vyhod? v shellu v??e zm?n?n? error.
Je chyba v m?m k?du?
Beleg :error: :bumbum:
P.S.M?m verzi Pythonu 2.4.3