# -*- coding: utf-8 -*-
import wx
app = wx.App()
# ファイル選択ダイアログを作成
dialog = wx.FileDialog(None, u'ファイルを選択してください')
# ファイル選択ダイアログを表示
dialog.ShowModal()
<結果>
※環境により表示内容は異なります |
~~詳細~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# ファイル選択ダイアログを作成
dialog = wx.FileDialog(None, u'ファイルを選択してください')
ここではwx.FileDialogクラスをインスタンス化し、表示させる前準備を行っています。引数は(親ウィジット、タイトル部分に表示する文字列)です。
さらに引数を追加したり、スタイルを設定することでカスタマイズが可能です。
# 初期表示フォルダを指定する
first_path = "C:\\Users\\hoge\\Desktop"
dialog = wx.FileDialog(None, u'ファイルを選択してください', first_path)
# 選択可能なファイルを制限する
filter = "python file(*.py;*.pyw) | *.py;*.pyw | All file(*.*) | *.*"
dialog = wx.FileDialog(None, u'ファイルを選択してください', '', '', filter)
# ダイアログを「開く」モードで起動する
dialog = wx.FileDialog(None, u'ファイルを選択してください', style=wx.FD_OPEN)
# ダイアログを「保存」モードで起動する
dialog = wx.FileDialog(None, u'ファイルを選択してください', style=wx.FD_SAVE)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ここからは、wx.FileDialogクラスでよく使用する関数をご紹介します。
# 選択したファイルパスを取得する
dialog.GetPath()
# 初期表示フォルダを指定する
dialog.SetDirectory(first_path)
# 選択可能なファイルを制限する
dialog.SetWildcard(filter)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~=======================================================================
環 境:Python 2.7.9 / Windows7
=======================================================================
この記事が参考になりましたら、シェア・フォロー・おすすめしていただけると励みになります! \(^o^)/
=======================================================================
Python初心者です。
返信削除分かりやすい記事をありがとうございます。
>ここからは、wx.FileDialogクラスでよく使用する関数をご紹介します。
># 選択したファイルパスを取得する
>dialog.GetPah()
上記の箇所の3行目がPathになっていません。
とても参考にしているサイトなので暇があるときに直していただきたいです。
ご指摘いただきありがとうございます!
削除誤字がありましたので修正いたしました!
いつもご愛顧いただきありがとうございます!(^o^)
カスタマイズのち、
返信削除# 選択可能なファイルを制限する
が動作しません。
公式の最新版を確認したところ、"wildcard=" と入れる必要がありました。
お手数ですが修正をお願いします。
コメントありがとうございます(^^)
削除ご指摘の件ですが、当方では記事の内容のままで、フィルターをかけることができました。
↓ちなみに、このように書きました。
# -*- coding: utf-8 -*-
import wx
app = wx.App()
# ファイル選択ダイアログを作成
dialog = wx.FileDialog(None, u'ファイルを選択してください')
# 選択可能なファイルを制限する
filter = "python file(*.py;*.pyw) | *.py;*.pyw | All file(*.*) | *.*"
dialog = wx.FileDialog(None, u'ファイルを選択してください', '', '', filter)
# ファイル選択ダイアログを表示
dialog.ShowModal()
差し支えなければ、どのように記述して制限がかからなかったのかご教示いただけませんか?
何卒、ご検討のほどよろしくお願いいたします。
このコメントは投稿者によって削除されました。
返信削除ファイルダイアログ内に[エンコード]などのコンボボックスを設置することは可能でしょうか。
返信削除メモ帳とかにあるやつです。
コメントありがとうございます。
削除wx.FileDialogにコンボボックスの追加はできないようです(TдT)
返答ありがとうございます。
削除やはりそうですか...