диалог открытия файла wxpython - PullRequest
1 голос
/ 09 февраля 2012

Почему этот код wxpython дает мне следующую ошибку?

self.Bind (wx.EVT_MENU, self.onNewFile, self.New_File)

def onNewFile(self,evt):

    wx.FileDialog(None,'Choose a file',os.getcwd(),"",wx.OPEN)
    if dialog.ShowModal() == wx.ID_OK:
        print dialog.GetPath()
    dialog.Destroy()

Другие коды для настройкиМеню и создание элементов есть, но когда это выполняется, я получаю следующую ошибку:

Traceback (most recent call last):
  File "C:\Python27\Front_End.py", line 52, in onNewFile
    wx.FileDialog(None,'Choose a file',os.getcwd(),"",wx.OPEN)
  File "C:\Python27\lib\site-packages\wx-2.8-msw-unicode\wx\_windows.py", line 2430, in __init__
    _windows_.FileDialog_swiginit(self,_windows_.new_FileDialog(*args, **kwargs))
TypeError: String or Unicode type required

Что это значит?

1 Ответ

2 голосов
/ 09 февраля 2012

wx.FileDialog прототип ниже

__init__(self, parent, id, title, pos, size, style, name)

Вы можете пропустить один параметр. Я также немного отредактировал ваш код следующим образом.

def onNewFile(self,evt):

    dialog = wx.FileDialog(None,'Choose a file',os.getcwd(),"", "",wx.OPEN)
    if dialog.ShowModal() == wx.ID_OK:
        print dialog.GetPath()
    dialog.Destroy()
...