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 :

problème avec wx.DateTime


Sujet :

wxPython

  1. #1
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 77
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Points : 1 913
    Points
    1 913
    Par défaut problème avec wx.DateTime
    Bonjour !
    Je bute depuis quelques heures sur ce qui semble être un bug énorme
    de l'objet wx.DateTime de la librairie wxpython
    Voici le code incriminé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
       year=d[0]
                month=d[1]
                day=d[2]
                datinit=wx.DateTimeFromDMY(day,month,year)
                print month
                print datinit.GetMonth()
                print str(datinit)
    les valeurs sont 2007 pour year
    09 pour month
    et 15 pour day
    Voici l'affichage:
    2007-09-15
    9
    9
    10/15/07 00:00:00
    Autrement le mois est passé à 10 !!!
    Maintenant si je fais un
    datinit.SetMonth(month)
    le mois affiché reste à 10
    Par contre si je demande d'afficher
    datinit.GetMonth()
    Il affiche bien 9 ?????????
    J'ai donc pu observer ce phénomène pour month allant de 0 (valeur impossible)
    jusqu'à 11.
    Pour 12 il remplace par le mois courant ???
    Très ennuyeux !! Parce que j'utilise cela pour initialiser un objet datepicker, il s'agit de mettre à jour des fiches d'une base de données.
    La date récupérée est donc toujours fausse. Je peux évidemment contourner la difficulté en trichant sur le mois, mais au cours d'un update de wxpython ou le bug sera corrigé, plus rien ne marchera.
    J'ai donc essayé un bug-fix provisoire, de ce genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
                # correction de bug
                if datinit.GetMonth()!=month:
                    datinit=wx.DateTimeFromDMY(day,month-1,year)
                # fin de correction
    Mais cela ne marche pas parce que le GetMonth() est inexplicablement correct!
    Si vous pouvez m'éclairer.
    Merci

  2. #2
    Membre expérimenté 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
    Points : 1 728
    Points
    1 728
    Par défaut
    Le wrapper wxPython respecte l'implementation C++ de la bibliothèque wx où les indices des mois commencent à 0.

    cf ce thread

  3. #3
    Rédacteur
    Avatar de Zavonen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 772
    Détails du profil
    Informations personnelles :
    Âge : 77
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 772
    Points : 1 913
    Points
    1 913
    Par défaut
    Merci pour ton aide Pacificator.

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

Discussions similaires

  1. [2.x] problème avec type datetime comme identifiant
    Par reziky dans le forum Symfony
    Réponses: 2
    Dernier message: 25/11/2013, 20h17
  2. problème avec la DateTime Taglib
    Par opeo dans le forum Taglibs
    Réponses: 2
    Dernier message: 15/11/2008, 15h21
  3. Problème avec le DateTime
    Par rad_hass dans le forum C#
    Réponses: 10
    Dernier message: 22/03/2008, 10h24
  4. Problème avec convert datetime
    Par sane79 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 02/07/2007, 10h43
  5. problême avec datetime
    Par Xanime dans le forum Services Web
    Réponses: 1
    Dernier message: 13/06/2007, 16h24

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