【Python応用】Tkinterでアプリ作成–filedialogの使用例まとめ-

Python

ここではTkinterにおける「filedialog」の使用例をまとめています。

この記事の対象

  • filedialogを使用したい方
  • filedialogの使用例を知りたい方
  • ファイルを開く、参照する方法を知りたい方
スポンサーリンク
スポンサーリンク

filedialogとは?

filedialogとはファイルを選択することが可能になるtkinterのパッケージです。

ファイルを開く、保存する場合に使用するものです。

基本的な型

ディレクトリ参照

filedialog.askdirectory()

ファイルのディレクトリを取得したい場合に使用します。

ファイルを開く

filedialog.askopenfilename()

ファイルを開きたいときに使用します。

ファイル保存

filedialog.asksaveasfilename()

ファイルを保存したいときに使用します。

オプションは以下の通りです。

Option 内容
parentsダイアログをその上に表示するウィンドウ
titleウィンドウのタイトル
initialdir最初に表示するディレクトリ
nitialfileダイアログを表示した際に選択するファイル
filetypes(ラベル, パターン) のタプルからなるシーケンスで、’*’ が利用できる
defaultextensionファイルに追加するデフォルトの拡張子 (保存ダイアログ向け)
multiple真の場合、複数要素の選択を許可

ディレクトリの参照

from tkinter import *
import tkinter as tk
from tkinter import filedialog
#1---ボタンクリック
def btn_click():
    dirname = filedialog.askdirectory() #askdirectory
    if len(txt.get()) >= 1 :
        txt.delete(0, tk.END)
    txt.insert(tk.END,dirname)#txtへの插入

#2---画面生成
root = Tk()
root.title("Test")
root.configure()
root.geometry("640x395")
#3---entry作成
xt = tk.Entry(width = 65, bg = "#FAF8EC")
txt.place(x=10, y=10)
#4---ボタン作成
button = Button( text = "参照", command = btn_click)
button.pack(expand=True, anchor=tk.CENTER)

root.mainloop()

1の部分ではボタンをクリックしたときの処理を関数化したものです。内容としては、entryに何かしら文字列があったら削除して、pathを書き込むというものです。

entryに文字列があるかどうかは「get()」を用いて取得しています。

書き込む場合は、「insert()」を用います。引数に位置と書き込む内容を指定します。

【結果】

タイトルとURLをコピーしました