Solved

CDateTimeCtrl Problem

Posted on 2001-07-19
11
624 Views
Last Modified: 2013-11-20
I have a Dialog based application. I added a CDateTimeCtrl to the Dialog template. I added a member variable to the Dialog class of Type CDateTimeCtrl as m_datetimectrlTest. (Using Class Wizard)

When I try to retrieve the time as(say in OnOk() )

CTime mytime;
m_datetimectrlTest.GetTime(time);

TRACE1("Time is %s\n",time.Format("%Hhr%Mmin%Ssec") );

Time is always showing 23 hr 59 min 13 sec ??!!

Can anyone give some hints what the problem could be?
0
Comment
Question by:ashani
  • 3
  • 3
  • 2
  • +3
11 Comments
 
LVL 42

Expert Comment

by:sedgwick
ID: 6297645
here's my code to diaply the time and it works fine:

     CTime mytime;
     m_datetimectrlTest.GetTime(mytime);
     
     int Day = mytime.GetDay();
     int Month = mytime.GetMonth();
     int Year = mytime.GetYear();
     int Minute = mytime.GetMinute();
     int Hour = mytime.GetHour();
     int Second = mytime.GetSecond();

     CString strTime;
     strTime.Format("%d.%d.%d, %d::%d::%d", Month,Day,Year,Hour,Minute,Second);

     TRACE1("Time is %s\n", strTime);

any questions?

     

0
 
LVL 42

Expert Comment

by:sedgwick
ID: 6297661
i used your TRACE code also to check if its right and what can i say, it showed the current time.
0
 
LVL 9

Expert Comment

by:ShaunWilde
ID: 6297769
are you calling GetTime before or after CDialog::OnOK - I suggest before
0
 
LVL 30

Expert Comment

by:Zoppo
ID: 6297793
Hi,

I also made a little test. The GetTime always returned a CTime with the current time and the
selected date. When I add time-values using CDateTimeCtrl::SetFormat() I can change the
time in the edit-control of the date-time-control and this modified time is returned by GetTime().

ZOPPO
0
 
LVL 1

Author Comment

by:ashani
ID: 6300929
I tested this code on a few other machines..I worked fine on every machine except two!!
Could this be a problem with some library version or installation or something...
0
Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 
LVL 9

Expert Comment

by:ShaunWilde
ID: 6301259
> Could this be a problem with some library version or installation or something...

it's possible the control is hosted in comctl32 what versions do you have on the machines?
0
 
LVL 1

Author Comment

by:ashani
ID: 6302274
There is VC 6.0 on all the machines..
There is also comctl32 here.
Which version or which file should I look for?
0
 

Expert Comment

by:ahphone
ID: 6304664
I once found the value of the time under debug mode is different from that under release mode.
Under the debug mode ,the date and time is current date and time.But under the release mode, the date and time is 1980/1/1 00:00:00.
0
 
LVL 9

Expert Comment

by:ShaunWilde
ID: 6305121
> Which version or which file should I look for

well what version(s) is/are working - and then make sure it is availabe on the other machines
0
 
LVL 49

Accepted Solution

by:
DanRollins earned 100 total points
ID: 6306498
Try switching to using COleDateTime.  Eg,:
//---------------- in OnInitDialog
COleDateTime timeNow;
timeNow.GetCurrentTime();
m_datetimectrlTest.SetTime( timeNow );

//---------------- in OnOK or whenever...

COleDateTime timeInput;
m_datetimectrlTest.GetTime( timeInput );

TRACE1("Time is %d:%d.%d\n",
   timeInput.GetHour(),
   timeInput.GetMinute(),
   timeInput.GetSecond()
);

-- Dan
0
 
LVL 1

Author Comment

by:ashani
ID: 6336734
Hi Dan, Thanks for your solution.Sorry I am very late.
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

In this article, I'll describe -- and show pictures of -- some of the significant additions that have been made available to programmers in the MFC Feature Pack for Visual C++ 2008.  These same feature are in the MFC libraries that come with Visual …
Introduction: Dynamic window placements and drawing on a form, simple usage of windows registry as a storage place for information. Continuing from the first article about sudoku.  There we have designed the application and put a lot of user int…
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
This video demonstrates how to create an example email signature rule for a department in a company using CodeTwo Exchange Rules. The signature will be inserted beneath users' latest emails in conversations and will be displayed in users' Sent Items…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now