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 :

MDIFrame vs Onglet


Sujet :

wxPython

  1. #1
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Par défaut MDIFrame vs Onglet
    Bonjour,

    Voici du code extrait du livre de Rappin (http://www.manning.com/rappin/)

    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
    28
    29
    30
    31
     
    #-----
    import wx
     
    class MDIFrame(wx.MDIParentFrame):
        def __init__(self):
            wx.MDIParentFrame.__init__(self, None, -1, "MDI Parent", 
                    size=(600,400))
            menu = wx.Menu()
            menu.Append(5000, "&New Window")
            menu.Append(5001, "E&xit")
            menubar = wx.MenuBar()
            menubar.Append(menu, "&File")
            self.SetMenuBar(menubar)
            self.Bind(wx.EVT_MENU, self.OnNewWindow, id=5000)
            self.Bind(wx.EVT_MENU, self.OnExit, id=5001)
     
        def OnExit(self, evt):
            self.Close(True)
     
        def OnNewWindow(self, evt):
            win = wx.MDIChildFrame(self, -1, "Child Window")
            win.Show(True)
     
    if __name__ == '__main__':
        app = wx.PySimpleApp()
        frame = MDIFrame()
        frame.Show()
        app.MainLoop()
     
    #-----
    Je m'attendais à voir de nouvelles fenetres s'ouvrir. Et en fait j'ai des onglets
    quand je clique sur File->New Window.


    C'est pareil chez vous ?


    Et c'est normal? Qu'est-ce qui m'échappe?

    Merci

  2. #2
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    J'ai bien des fen$etres MDI qui se créent chez moi (Python 2.4, wxPython 2.7.2.0 sous windows)

  3. #3
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Par défaut
    Moi je suis avec:

    $ python
    Python 2.4.4c0 (#2, Jul 30 2006, 15:43:58)
    [GCC 4.1.2 20060715 (prerelease) (Debian 4.1.1-9)] on linux2


    Comment je fais pour connaitre ma version de wxPython?

    Merci

  4. #4
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    la version de wxpython est donné par (comme pour beaucoup de bibliothèque)
    en faisant dir(wx), tu as l'ensemble des fonctions/attributs du module, ensuite, il y a presque toujours un attribut __version__ ou VERSION

  5. #5
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Par défaut
    Citation Envoyé par Guigui_
    la version de wxpython est donné par (comme pour beaucoup de bibliothèque)
    en faisant dir(wx), tu as l'ensemble des fonctions/attributs du module, ensuite, il y a presque toujours un attribut __version__ ou VERSION
    Merci j'ai appris quelque chose.

    Bon bah ma version est la 2.6.3.2

    Je vais rester avec mes tab.

    Merci

  6. #6
    Invité de passage
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1
    Par défaut
    Je viens de tester :
    - Sous windows , j'ai des fenetres qui s'ouvrent dans la fenêtre principale
    - Sous Linux, c'est effectivement un système d'onglets

    A priori, cela semble donc le comportement normal sous Linux, même si cela surprend

  7. #7
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Par défaut
    Citation Envoyé par czerkowski
    A priori, cela semble donc le comportement normal sous Linux, même si cela surprend
    Et oui tout à fait.

    Robbin Dun de Vancouver nous donne la réponse:

    Citation Envoyé par robin dun
    GTK doesn't have a native MDI window interface like Windows does, so it is emulated with a wx.Notebook
    J'en profite pour ouvrir un nouveau sujet

  8. #8
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Par défaut
    Citation Envoyé par robin dun
    I mean that the MDI API is implemented on wxGTK by using a wxNotebook because there is no MDI style widgets natively available.
    Qu'est ce que cela veut dire "visuellement". On ne peut pas avoir des
    fenetres qui s'ouvrent les une après les autres sous linux.

    C'est le mot implémenté que je ne comprends pas je pense.

    Merci car moi les notebooks ca me donne aussi des onglets.

  9. #9
    Membre expérimenté
    Avatar de Alain_72
    Inscrit en
    Août 2004
    Messages
    180
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 180
    Par défaut
    Les feuilles MDI sont une technologie Windows qui n'existe pas dans l'environnement GTK.
    C'est pourquoi, pour cet environnement, les fenêtres filles sont créées sous forme d'onglets par héritage de la classe wx.Notebook.

  10. #10
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 39
    Par défaut
    Citation Envoyé par Alain_72
    Les feuilles MDI sont une technologie Windows qui n'existe pas dans l'environnement GTK.
    C'est pourquoi, pour cet environnement, les fenêtres filles sont créées sous forme d'onglets par héritage de la classe wx.Notebook.
    Bon d'accord. Et en plus je trouve que c'est beaucoup plus fonctionnel que touutes ces fenetres qui s'ouvrent partout.

Discussions similaires

  1. Fiche à Onglets: Rendre inactif un TTabSheet
    Par Akta3d dans le forum C++Builder
    Réponses: 7
    Dernier message: 21/04/2004, 14h40
  2. [VB.NET] Couleurs des onglets d'un TabControl
    Par ineznia dans le forum Windows Forms
    Réponses: 6
    Dernier message: 09/04/2004, 13h18
  3. mettre une JScrollBar sur un onglet
    Par thedd dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 02/03/2004, 20h12
  4. [BCB6] Probleme onglet dans IDE
    Par bgautier dans le forum C++Builder
    Réponses: 5
    Dernier message: 21/01/2004, 16h20
  5. Changer dynamiquement la position des onglets
    Par ginnovy dans le forum C++Builder
    Réponses: 2
    Dernier message: 11/09/2002, 18h24

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