IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

wxPython Discussion :

Comment actualiser une frame


Sujet :

wxPython

  1. #1
    Membre confirmé Avatar de Mysti¢
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Par défaut Comment actualiser une frame
    Tout est dans le titre, je voudrais savoir comment actualiser une frame, en passant par une autre.
    Exemple en cliquant sur un bouton ds "Frame2, actualiser Frame1 ou autre.
    Si quelqu'un peut m'éclaicir, merci.

  2. #2
    Membre éclairé
    Avatar de airod
    Homme Profil pro
    Gérant Associé, DMP Santé et Directeur technique
    Inscrit en
    Août 2004
    Messages
    767
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Gérant Associé, DMP Santé et Directeur technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 767
    Par défaut
    bonsoir,

    essaie peut être la méthode update()

    exou

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 71
    Par défaut
    essaie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
            frame.Refresh(True) # rafraîchissement de la frame
            frame.Update()      # mise à jour de la frame

  4. #4
    Membre confirmé Avatar de Mysti¢
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Par défaut
    OK, j' vais essayer ça ce soir, merci.
    Juste un point, je veux raffraichir une frame à partir d'une autre sachant que chacune de ces frames sont dans des classes différentes

  5. #5
    Membre Expert Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Par défaut
    bonsoir,

    Il faut qu'il existe une relation entre tes frames, que tu ais conservé une reference à la frame à rafraichir dans la frame 'rafraichissante'.

    cf ce thread

  6. #6
    Membre confirmé Avatar de Mysti¢
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Par défaut
    merci, l'autre post m'a énormément aidé, j'arrive à exécuter une fonction compris dans une autre frame, mais j'arrive pas à créer de fonction de raffraichissement.
    Je pense poster un bout de code plus tard. (je ne suis pas sur mon PC)

  7. #7
    Membre confirmé Avatar de Mysti¢
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Par défaut
    J'ai un peu avancé, j'arrive à masquer puis afficher la frame "parent"
    mais j'arrive pas à la raffraichir.
    J'ai un listing de différentes informations qui sont récupérées dans un fichier texte, mais quand je masque puis réaffiche la frame en question, malgré le fichier ayant été modifié puis sauvegardé, le listing reste le même.

    mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    class AddServerFrame(wx.Frame):
     
        def __init__(self, parent):
            wx.Frame.__init__(self, parent, -1, title='Nouvel enregistrement',
                              size=(250, 250) )
     
            self.parent = parent	
            [...] # je passe toutes les lignes qui ne seront pas utiles à la compréhension de mon problème
            #et un peu plus tard, en faite apres la sauvegarde du nouveau fichier de données, je fait:
     
            parentframe = self.parent
            self.parent.UpdateFrame(parentframe)
    Ensuite j'arrive bien à éxécuter la fonction comprise dans la classe de l'autre frame:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    class ManageServerFrame(wx.Frame):
     
        def __init__(self, parent):
            self.frame01 = wx.Frame.__init__(self, None, -1, title='Gérer Mes serveurs',
                              size=(440, 370) )
    [...]
     
        def UpdateFrame(self, frame):
            frame.Hide()
            frame.Show()
    Mais j'ai pas le résultat attendu :s

    J'ai essayé:

    sans succès, une des solutions que je ne souhaiterais pas utiliser mais qui me permet quand même d'arriver à peu près au résultat souhaité, est de fermer cette frame, puis de la réouvrir :/
    Si quelqu'un peut m'éclairer, merci.

  8. #8
    Membre Expert Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Par défaut
    salut,

    tu as surement une fonction qui prend les infos de ton fichier texte pour les inserer dans les controles de ta frame, c'est celle-la qu'il faut executer.

  9. #9
    Membre confirmé Avatar de Mysti¢
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Par défaut
    oui, j'ai bien une fonction pour récupérer les infos du fichier texte, mais c'est pas celle-là qui affiche ma "listbox", mais je devrait réussir à le faire, merci pour la piste

  10. #10
    Membre confirmé Avatar de Mysti¢
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Par défaut
    Est ce que c'est possible de supprimer ou détruire un élément précédemment créé (pas masquer) parceque j'arrive à appeler ma listebox en passant par une fonction, mais en faite elle se superpose à la précédente
    Ou si il y à une méthode spécifique...

  11. #11
    Membre Expert Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Par défaut
    Salut Mysti¢,

    je te donne la methode pour trouver les methodes... :

    1) Telecharge et installe win32-docs-demos

    2) Ouvre wxPython2.x Docs Demos and Tools => wxWidgets Reference

    3) Cherche Alphabetical class reference => wxListBox

    4) Regarde les methodes propres à la classe, tu trouves:

    Members

    wxListBox::wxListBox
    wxListBox::~wxListBox
    wxListBox::Create
    wxListBox:: Deselect
    wxListBox::GetSelections
    wxListBox::InsertItems
    wxListBox::HitTest
    wxListBox::IsSelected
    wxListBox::Set
    wxListBox::SetFirstItem
    rien qui correspond à ton besoin...

    5) Regarde plus haut:

    Derived from


    wxControlWithItems
    wxControl
    wxWindow
    wxEvtHandler
    wxObject
    Les classes parentes, interessant ça

    6) Parcours les classes parentes:

    le premier :wxControlWithItems


    wxControlWithItems

    ...
    Members

    wxControlWithItems::Append
    wxControlWithItems::Clear
    wxControlWithItems:: Delete
    wxControlWithItems::FindString

    7) cherche par là
    Clear
    Delete
    8) Trouvé?

  12. #12
    Membre confirmé Avatar de Mysti¢
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Par défaut
    Un grand merci, ça c'est de la méthode
    J'avais déjà wxPython2.x Docs Demos and Tools d'installé, mais je n'étais jamais aller voir par là.
    Ca me fait beacoup de doc dont je connaissait même pas l'éxistence sur mon PC :p, y'a plus qu'à appliquer. Je vais voir ce que je peux faire avec

  13. #13
    Membre confirmé Avatar de Mysti¢
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 155
    Par défaut
    Voilà j'ai réussi, je me suis vraiment compliqué la vie pour rien alors que la solution étai simple :s
    Donc même pas besoin de rafrachir toute la frame.
    Il suffisait d'éffacer tout les éléments de ma "CheckListBox"
    avecPuis de relire le fichier de donnée, afin d'ajouter les anciennes et nouvelles entrées dans celle-ci.

    Résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. comment actualiser une frame à partir d'une autre
    Par agur29 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 12/10/2007, 10h14
  2. comment actualiser une page web automatiquement ?
    Par safadev dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/09/2006, 23h34
  3. [PHP] Comment actualiser une frame à partir d'une autre ?
    Par pekka77 dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 28/10/2005, 12h03
  4. Réponses: 6
    Dernier message: 27/10/2005, 21h12
  5. Comment tuer une frame
    Par tymous dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 28/07/2004, 11h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo