CDateTimeCtrl::GetTime() et comparaison
Bonjour à tous.
J'ai deux objets de type CDateTimeCtrl sur mon formulaire et j'aimerai recuillir et comparer les heures. Mais seulement il se trouve qu'il se comporte bizarrement.
Par exemple m_dateDebut affiche 16:30 et m_dateFin affiche 17:30 et ceci ne marche pas bien
En fait il m'affiche le message alors qu'il ne devrait pas
Code:
1 2 3 4 5 6 7 8 9 10
| COleDateTime m_THeureDebut;
COleDateTime m_THeureFin;
m_dateDebut.GetTime(m_THeureDebut);
m_dateFin.GetTime(m_THeureFin);
if (m_THeureFin <= m_THeureDebut)
{
AfxMessageBox("L'heure de fin doit être ultérieure à l'heure de début",MB_ICONINFORMATION);
return;
} |
Quelqu'un peut il m'aider?
Avec les fonctions de CTime
Il existe une fonction qui te rend l'heure, et la même qui te rend les minutes, les secondes, etc.... Tu peux donc t'en servir, je pense, pour comparer tes dates entre les deux CTime que tu récupère à partir de tes deux controles...
CTime::GetHour
int GetHour( ) const;
Remarks
Returns the hour, based on local time, in the range 0 through 23. This function calls GetLocalTm, which uses an internal, statically allocated buffer. The data in this buffer is overwritten as a result of calls to other CTime member functions.