wxPython 檔案對話方塊

幾乎每個可以開啟一個或多個檔案的桌面應用程式都有一個檔案對話方塊。

開啟檔案對話方塊可能看起來像一個非常複雜的視窗:它包含按鈕,位置,標籤和更多小部件。此外,這個開啟檔案對話方塊的外觀在每個平臺上看起來都不同:Mac OS,Windows 等。

wxPython 模組帶有開啟的檔案對話方塊,可以通過一些函式呼叫來建立。

wxPython 開啟檔案對話方塊

wxPython 檔案對話方塊

下面的示例使用 wxPython 建立一個具有本機外觀的檔案對話方塊:

#!/usr/bin/python
 
import wx
 
def onButton(event):
    print "Button pressed."
 
app = wx.App()
 
frame = wx.Frame(None, -1, 'win.py')
frame.SetDimensions(0,0,200,50)
 
# Create open file dialog
openFileDialog = wx.FileDialog(frame, "Open", "", "", 
                                      "Python files (*.py)|*.py", 
                                       wx.FD_OPEN | wx.FD_FILE_MUST_EXIST)
 
openFileDialog.ShowModal()
print(openFileDialog.GetPath())
openFileDialog.Destroy()

要使用 wxPython 建立檔案對話方塊,我們可以簡單地呼叫 wx.FileDialog()

這個方法的定義是:(parent,message,defaultDir,defaultFile,wildcard,style,pos)

我們用引數呼叫這個方法:

wx.FileDialog(frame, "Open", "", "","Python files (*.py)|*.py",wx.FD_OPEN | wx.FD_FILE_MUST_EXIST)

(未指定預設目錄或預設檔案)。

showModal() 方法顯示視窗:

openFileDialog.ShowModal()

命令 openFileDialog.GetPath() 返回檔案的完整路徑(如果選擇了一個)。