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 :

subclass dans les fichiers XRC


Sujet :

wxPython

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 3
    Par défaut subclass dans les fichiers XRC
    J'utilise wxGlade pour générer un fichier .xrc (je prefere a xrced)

    voila le fichier xrc:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    <?xml version="1.0" encoding="ISO-8859-15"?>
    <!-- generated by wxGlade 0.4 on Sat Dec 23 12:16:48 2006 -->
     
    <resource version="2.3.0.1">
        <object class="wxFrame" name="frmFrameClass" subclass="FrameClass">
            <style>wxDEFAULT_FRAME_STYLE</style>
            <size>220, 130</size>
            <title>frame_1</title>
            <object class="wxBoxSizer">
                <orient>wxVERTICAL</orient>
                <object class="sizeritem">
                    <option>1</option>
                    <flag>wxEXPAND|wxADJUST_MINSIZE</flag>
                    <object class="wxButton" name="btnQuit">
                        <handler>btnQuitClick</handler>
                        <label>Bye !!</label>
                    </object>
                </object>
            </object>
        </object>
    </resource>
    et le code Python:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    import wx
    from wx import xrc
     
    class FrameClass(wx.Frame):
        def __init__(self):
            self.res = xrc.XmlResource('test.xrc', 0) # ne pas oublier le flag 0 si textes en français!
            self.PostCreate(self.res.LoadFrame(None, 'frmFrameClass'))
     
            self.btnTest = xrc.XRCCTRL(self, 'btnQuit')
            self.Bind(wx.EVT_BUTTON, self.btnQuit, self.btnTest)
     
        def btnQuit(self, event):
            print "Event handler `btnQuit' not implemented"
            self.Close()
            event.Skip()
     
    class AppTest(wx.App):
        def OnInit(self):
            wx.InitAllImageHandlers()
            frm = FrameClass()
            self.SetTopWindow(frm)
            frm.Show()
            return True
     
    if __name__ == "__main__":
        app = AppTest(0)
        app.MainLoop()
    Pb: si j'ai l'attribut SUBCLASS dans
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <object class="wxFrame" name="frmFrameClass" subclass="FrameClass">
    j'ai un message d'erreur, si je supprime cet attribut, il n'y a plus de problème.

    Je pourrais supprimer l'attribut SUBCLASS (quoique wxGlade le met automatiquement) mais j'aimerais savoir quand même pourquoi j'ai cette erreur et comment resoudre le problème.

    PS: je debute en Python (mais pas en prog)
    PS2: Merci a Marc Lebrun pour sa page wxPython: Interfaces graphiques avec XRC

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 3
    Par défaut
    La solution:
    Dans wxGlade, sur la fenêtre principale, il faut mettre wxFrame comme classe et du coup l'attribut "subclass" n'est pas ajouté.

    Par contre, il est possible de créer sa propre sous classe pour un composant et si on veut utiliser cette sous classe au lieu d'une classe standard il faut indiquer le nom de la classe dans l'attribut "subclass".

    voir la page SubclassingListCtrlWithXrc

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 11/06/2009, 17h49
  2. ne pas ecrire dans les fichier log
    Par HULK dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 07/04/2006, 08h22
  3. Réponses: 8
    Dernier message: 18/07/2005, 14h04
  4. Réponses: 3
    Dernier message: 29/12/2004, 17h10

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