Tkinter(tkFileDialog) を使ってファイルを開くダイアログを使ってみる。

Cassiopeia2007-08-19

# -*- coding: utf-8 -*-

import Tkinter
import tkMessageBox
import tkFileDialog

root=Tkinter.Tk()
root.withdraw()

fTyp=[('テキストファイルとExcelファイル','*.txt;*.csv')]
#複数のタイプを指定することも可能。

iDir='c:/'

#askopenfilename 一つのファイルを選択する。
filename=tkFileDialog.askopenfilename(filetypes=fTyp,initialdir=iDir)

tkMessageBox.showinfo('FILE NAME is ...',filename)

#askopenfilenames 複数ファイルを選択する。
filenames=tkFileDialog.askopenfilenames(filetypes=fTyp,initialdir=iDir)

for f in filenames:
    tkMessageBox.showinfo('FILE NAME is ...',f)

#askdirectory ディレクトリを選択する。
dirname=tkFileDialog.askdirectory(initialdir=iDir)

tkMessageBox.showinfo('SELECTED DIRECROTY is ...',dirname)

#このコードはutf-8で保存する。
  • askopenfilename askopenfilenames askdirectory のオプション
オプション 説明
defaultextension string ユーザが明示的に付加しなかった場合にくっつける拡張子。(open dialog の時は無視される。)
filetypes list (label, pattern)という形のタプル。pattern '*' は全てのファイル。
initialdir string 初期ディレクトリ。
initialfile string 初期ファイル名。
parent widget 親ウィンドウ。ダイアログが閉じた時にフォーカスは親ウィンドウに戻る。
title string ダイアログのボックスのタイトル。