2010-01-12 2 views
0

J'ai une liste d'emplacements de fichiers stockés sous forme de chaînes. Je veux être capable d'ouvrir une fenêtre séparée pour toutes les différentes chaînes. Quelle serait la meilleure façon de le faire? Essentiellement, vous cliquez sur un bouton, les chaînes sont construites et ils sont laissés dans une liste. Quand j'étais prototypage, j'ai construit un petit programme pour afficher le contenu d'un fichier statique. Cela fonctionne, mais l'emplacement est statique. Je veux ajouter à la fonction du bouton cliqué un programme qui parcourrait la liste et ouvrirait chacun des contenus dans une nouvelle fenêtre. En ce moment la liste est construite et la fenêtre s'ouvre avec le contenu, mais je ne suis pas sûr de savoir comment combiner les deux. Comme toujours, toute aide très appréciée.Ouverture de différentes fenêtres dans wxPython en utilisant des chaînes d'une liste

Répondre

0
for s in mystrings: 
    open_window_for_string(s) 

Je suis sûr que vous pouvez fournir une définition pour open_window_for_string si vous savez comment ouvrir une fenêtre avec le contenu d'un fichier ...

, il ne fait également pas être un La fonction d'un argument, bien sûr, le définit pour accepter tous les arguments supplémentaires nécessaires. Ou utilisez n'importe quelle expression pour ouvrir le type de fenêtre que vous souhaitez utiliser sans l'encapsuler dans une fonction. En fait, prenez simplement le code que vous utilisez pour afficher votre fichier statique, remplacez le nom de fichier par une variable - appelée filename, peut-être - puis utilisez une boucle for pour parcourir votre liste de chaînes. Simple!

+0

Je suppose que ma question est de savoir comment obtenir cette définition statique. Dans le mode autonome, il s'agit juste de pathname = 'c: \ foobar', et il est passé à une fenêtre. Pour que cela vienne de cette liste de génération, que ferais-je? Pseudo Code: class cheminWindow (chemin): windowDisplay (chemin d'accès) Je ne sais pas trop. Quand j'ai essayé de faire quelque chose comme ça, je n'ai pas défini de nom de chemin. – Kevin

+0

Eh bien, 'class pathWindow (chemin): ...', en Python, signifie une déclaration de classe 'pathWindow' qui hérite de la classe' pathname'. Vraisemblablement, vous voulez que 'pathname' soit un argument pour le constructeur de votre classe, alors définissez-le comme tel:' def __init __ (self, pathname): ... '(dans le corps de votre classe). Aussi, si vous préférez vraiment que quelqu'un l'écrive pour vous, alors (1) reconsidérer et rechercher les docs à la place * ou *, à défaut, (2) afficher le code que vous utilisez pour accumuler les noms de chemin dans une liste et d'ouvrir un seul fichier dans une fenêtre et je vais essayer de vous aider la prochaine fois que je suis sur SO. –

+0

Michal, j'ai élaboré dans une autre question: http://stackoverflow.com/questions/2059786/opening-multiple-windows-from-a-list-in-wxpython – Kevin

Questions connexes