le code ci-dessous:wxpython boîte de dialogue Enregistrer le fichier donne un gtk alerte
#!/usr/bin/env python
import wx
class MyForm(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, wx.ID_ANY,
"File and Folder Dialogs Tutorial")
panel = wx.Panel(self, wx.ID_ANY)
saveFileDlgBtn = wx.Button(panel, label="Show SAVE FileDialog")
saveFileDlgBtn.Bind(wx.EVT_BUTTON, self.onSaveFile)
sizer = wx.BoxSizer(wx.VERTICAL)
sizer.Add(saveFileDlgBtn, 0, wx.ALL|wx.CENTER, 5)
panel.SetSizer(sizer)
def onSaveFile(self, event):
"""
Create and show the Save FileDialog
"""
dlg = wx.FileDialog(
self, message="Save file as ...",
defaultDir=".",
defaultFile="", wildcard="*.*", style=wx.SAVE
)
if dlg.ShowModal() == wx.ID_OK:
path = dlg.GetPath()
print path
fp = open(path, 'w')
fp.write("bau bau")
fp.close()
dlg.Destroy()
if __name__ == "__main__":
app = wx.App(False)
frame = MyForm()
frame.Show()
app.MainLoop()
donne le message suivant sur mon terminal lorsque je tente d'enregistrer le fichier en donnant un nouveau test.txt nom dans la boîte de dialogue de fichier widget:
(python:16795): Gtk-WARNING **: Unable to retrieve the file info for `file:///home/roberto/python/test.txt': Error stating file '/home/roberto/python/test.txt': No such file or directory
Malgré ce message, le fichier est enregistré correctement, mais je voudrais comprendre pourquoi le message se produit et comment l'éviter. Est-ce quelque chose qui dépend des bibliothèques gtk installées dans mon système? Je cours un essai de Debian avec gtk version 2.24 et python-wxgtk2.8.
Merci beaucoup.
Roberto
Doc suggère wx.FD_SAVE non wx.SAVE. http://www.wxpython.org/docs/api/wx.FileDialog-class.html – AndrewStone
Merci pour l'amélioration, même si cela n'affecte pas l'avertissement gtk. r. – robelix