2009-02-18 6 views
0

J'essaie de trouver comment utiliser correctement le bouton sélecteur de fichier. La lecture du manuel de référence sur GtkFileChooserButton, GtkFileChooserDialog et GtkFileChooser n'a pas aidé jusqu'à présent. J'ai essayé de me connecter au signal non documenté file-set de GtkFileChooserButton et en appelant get\_filename() à partir d'ici, mais il semble se comporter de façon assez peu fiable. Lorsque l'utilisateur clique sur le bouton et sélectionne un fichier, cela fonctionne très bien jusqu'à présent.Utiliser FileChooserButton dans GTK +

Mais, si après avoir cliqué sur le même bouton (qui a déjà un ensemble de nom de fichier), l'utilisateur change son esprit et ferme le « fichier ouvert » dialogue, get\_filename()returns None (un type Python, je l'écrire en utilisant pygtk) tout le fichier reste défini. Encore plus bizarre, si j'appelle get_filename() sur ce bouton plus tard à partir d'un autre gestionnaire de signal, le nom de fichier retourne à ce qu'il avait précédemment été défini par l'utilisateur. Par ailleurs, seule la fermeture de la boîte de dialogue semble causer le problème, en appuyant sur "annuler" fonctionne très bien.

Répondre

0

question Incertain:

si vous voulez dire comment distincte entre un fichier choisi valide: si vous appelez Exécuter, vous obtiendrez un Reponse: Gtk::RESPONSE_ACCEPT si l'utilisateur a sélectionné un fichier et accepté ce fichier (cliqué sur OK)

N'obtenez donc le nom de fichier que lorsque le fichier est accepté.

si vous voulez dire comment réinitialiser filepath: voir gtk FileChooser -> set_ current_folder (nom de fichier) (sans espace)

+0

Désolé, mais je n'appelle pas moi-même sur Exécuter la boîte de dialogue. Je viens de mettre FileChooserButton sur ma fenêtre et il appelle la boîte de dialogue quand on clique dessus. –