2013-04-10 2 views
0

J'ai utilisé PythonCard pour créer mon interface graphique et les seuls éléments de menu que j'ai actuellement sont Enregistrer et Quitter. La sortie est entièrement fonctionnelle et ferme le programme. mais quand je clique sur Enregistrer, rien ne se passe. Je peux seulement supposer que la commande est fausse. J'ai fait des recherches approfondies et n'ai rien trouvé. La commande que j'ai utilisée était "save". Évidemment, ce n'est pas correct. Quelqu'un peut-il me dire quelle commande je dois utiliser?Problème Ajout de l'élément de menu Enregistrer à mon interface graphique

Resource File

Répondre

0

Il n'y a vraiment pas assez d'informations ici. Vous devez lier EVT_MENU à un gestionnaire d'événements pour l'élément de menu de sauvegarde. Ensuite, dans le gestionnaire d'événements, vous devrez définir le comportement "Enregistrer". Par exemple, enregistre-t-il dans une base de données, un fichier ou quoi? Une fois que vous avez compris cela, vous le mettez dans votre gestionnaire et le faites ou demandez au gestionnaire de faire tourner un fil.

EDIT: Si vous souhaitez enregistrer un fichier, consultez le fichier wx.FileDialog et définissez l'indicateur de style sur wx.SAVE. Quelque chose comme cela devrait fonctionner:

def onSaveFile(self, event): 
    """ 
    Create and show the Save FileDialog 
    """ 
    wildcard = "Text (*.txt)|*.txt|" \ 
      "All files (*.*)|*.*" 
    dlg = wx.FileDialog(
     self, message="Save file as ...", 
     defaultDir=self.currentDirectory, 
     defaultFile="", wildcard=wildcard, style=wx.SAVE 
     ) 
    if dlg.ShowModal() == wx.ID_OK: 
     path = dlg.GetPath() 
     print "You chose the following filename: %s" % path 
    dlg.Destroy() 

Voir aussi la démo wxPython, ou this ou docs

+0

Je veux qu'il enregistrer sur le bureau par défaut. Pourriez-vous me dire comment cela est fait? – user2256760

+0

Sauvegarder quoi? Fondamentalement, vous voudrez ouvrir un chemin de fichier avec le drapeau "w" (écriture) et y écrire vos données. Voir les documents Python: http://docs.python.org/2/tutorial/inputoutput.html#methods-of-file-objects –

+0

À droite, voici mon interface graphique. C'est un éditeur de code simple. Fondamentalement, c'est une interface graphique du bloc-notes. Je souhaite que ma fonction de sauvegarde agisse comme dans le bloc-notes: ouvrez la fenêtre dans laquelle vous sélectionnez l'emplacement. Je veux que le nom par défaut soit * .txt C'est à peu près tout. – user2256760

Questions connexes