py30.png

Základní dialogy Tkinter složka/soubor

Tkinter poskytuje mnoho standardních dialogů složka/soubor. Jsou užitečné, lehce použitelné. Je to dost jednoduché, ačkoliv oficiální dokumentace o tom explicitně nemluví.

Výběr adresáře

import tkinter, tkinter.filedialog

root = tkinter.Tk()
dirname = tkinter.filedialog.askdirectory(parent=root,initialdir="/",title='Vyberte adresář')
root.destroy()
if len(dirname ) > 0:
    print ("You chose %s" % dirname)

Výběr souboru na otevření

import tkinter,tkinter.filedialog

root = tkinter.Tk()
file = tkinter.filedialog.askopenfile(parent=root,mode='rb',title='Vyberte soubor', initialdir="mydir")
root.destroy()
if file:
    data = file.read()
    file.close()
    print ("Tento soubor má %d bytů." % len(data))

Dialog "Uložit jako"

import tkinter, tkinter.filedialog

mask = [
    ("Text files","*.txt"),
    ("Python files","*.py *.pyw"),
    ("All files","*.*")]

# if the filename does not have <strong class="highlight">extension</strong>
# it will add the specified defaultextension
root = tkinter.Tk()
soubor = tkinter.filedialog.asksaveasfile(
    title="testing defaultextension='.txt'",
    initialdir="mydir",
    initialfile="my file",
    defaultextension=".txt",
    filetypes=mask)

if soubor:
    soubor.write("moje data")
    soubor.close()

root.destroy()