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

Bibliothèques tierces Python Discussion :

Bibliothèque Pmw 1.3.2


Sujet :

Bibliothèques tierces Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2011
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Bibliothèque Pmw 1.3.2
    Bonjour
    Dans l'un de mes programmes, j'utilisais la méthode Pmw.initialise() laquelle se trouvait dans la bibliothèque Pmw 1.2 (que j'ai malheureusement bennée !)

    Cette méthode a disparu de la bibliothèque Pmw 1.3.2 et évidemment le programme plante ! (référence non trouvée)

    Comment ce fait-il que cette méthode ne soit pas dans la bibli 1.3.2 (puisque cette méthode est indispensable) ??

    J'ai cherché à télécharger cette bibli 1.2 pour Windows Vista, mais elle ne semble plus disponible.

    J'ai cherché dans http://pmw.sourceforge.net/doc/PmwFunctions.html où cette méthode initialise est spécifiée comme effectivement requise. Mais sans dire comment l'obtenir.

    Comment obtenir cette méthode Pmw.initialise() ?

  2. #2
    Expert confirmé Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Points : 4 005
    Points
    4 005
    Par défaut
    Bonjour,

    ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> import Pmw
    >>> Pmw.initialise()
    <Tkinter.Tk instance at 0x97e5b0c>
    >>> Pmw.version()
    '1.3'
    Elle viens d'où votre version ?

    @+
    Merci d'utiliser le forum pour les questions techniques.

  3. #3
    Expert confirmé Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Points : 4 005
    Points
    4 005
    Par défaut
    Bonsoir,

    Pour rester dans le respect des règles et avoir plus de réponses.
    Citation Envoyé par sivouplet
    Bonjour
    Merci d'avoir répondu à mon pb

    La bibli Pmw 1.3.2 provient du site http://olex.openlogic.com/packages/pmw

    J'ai refait le téléchargement à l'instant pour bien m'assurer que je n'avais pas fait d'erreur la première fois. Et je confirme que dans le répertoire Pmw/Pmw_1_3/lib la méthode initialise n'existe pas.

    S.
    Citation Envoyé par sivouplet
    Oui PauseKawa, vous avez raison, la fonction publique initialise est bien dans PmwBase.

    Comment dois-je faire l'appel car j'ai tout essayé:

    self.fenetre=PmwBase.initialise()
    NameError: global name 'PmwBase' is not defined

    self.fenetre=Pmw.PmwBase.initialise()
    AttributeError: 'module' object has no attribute 'PmwBase'

    self.fenetre=Pmw.initialise()
    AttributeError: 'module' object has no attribute 'initialise'

    Par ailleurs comment dois-je faire pour mettre ça sur le forum ?
    Pour moi, et à première vue, c'est un souci d'import.
    Pmw utilise un système d'import 'dynamic' que vous retrouvez dans l'__init__ du répertoire du package (Pmw)
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    # This file is executed when the Pmw package is imported.  It creates
    # a lazy importer/dynamic loader for Pmw and replaces the Pmw module
    # with it.  Even though the loader from the most recent installed
    # version of Pmw is used, the user is able to specify which version of
    # Pmw megawidgets to load by using the setversion() function of the
    # loader.
     
    # This is the only file in Pmw which is not part of a particular Pmw
    # release.
     
    import sys
    import os
    import re
     
    def _hasLoader(dir):
        # Only accept Pmw_V_R_P with single digits, since ordering will
        # not work correctly with multiple digits (for example, Pmw_10_0
        # will be before Pmw_9_9).
        if re.search('^Pmw_[0-9]_[0-9](_[0-9])?$', dir) is not None:
            for suffix in ('.py', '.pyc', '.pyo'):
                path = os.path.join(_dir, dir, 'lib', 'PmwLoader' + suffix)
                if os.path.isfile(path):
                    return 1
        return 0
     
    # First get a list of all subdirectories containing versions of Pmw.
    _dir = __path__[0]
    _listdir = os.listdir(_dir)
    _instdirs = filter(_hasLoader, _listdir)
    _instdirs.sort()
    _instdirs.reverse()
     
    # Using the latest version import the dynamic loader.
    _loader = 'Pmw.' + _instdirs[0] + '.lib.PmwLoader'
    __import__(_loader)
    _mod = sys.modules[_loader]
     
    # Create the dynamic loader and install it into sys.modules.
    sys.modules['_Pmw'] = sys.modules['Pmw']
    sys.modules['Pmw'] = _mod.PmwLoader(_dir, _instdirs, _listdir)
    Utilisez vous bien import Pmw ? Les autres __init__ du package sont vides.
    Comment importez vous Pmw ?

    @+

    Edit : Avez vous changer de version de Python ?
    Merci d'utiliser le forum pour les questions techniques.

Discussions similaires

  1. [MFC]bibliothèques Jpeg
    Par kor dans le forum MFC
    Réponses: 3
    Dernier message: 06/01/2004, 15h08
  2. Bibliothèque Gcc/mingw 2.95.3.6
    Par richard dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 11/10/2003, 22h54
  3. Réponses: 8
    Dernier message: 03/09/2003, 00h47
  4. Bibliothèques et documentation
    Par Anonymous dans le forum OpenGL
    Réponses: 4
    Dernier message: 01/04/2002, 12h24

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