Solved

CDateTimeCtrl Problem

Posted on 2001-07-19
11
632 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
Networking for the Cloud Era

Join Microsoft and Riverbed for a discussion and demonstration of enhancements to SteelConnect:
-One-click orchestration and cloud connectivity in Azure environments
-Tight integration of SD-WAN and WAN optimization capabilities
-Scalability and resiliency equal to a data center

 
LVL 31

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
 
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

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Pressing cancel button with C# UI Automation 3 82
Fibonacci challenge 11 133
Bartender label printing - switch on and off graphics 3 56
Increment column based of a FK 8 32
Here is how to use MFC's automatic Radio Button handling in your dialog boxes and forms.  Beginner programmers usually start with a OnClick handler for each radio button and that's just not the right way to go.  MFC has a very cool system for handli…
Introduction: Dialogs (2) modeless dialog and a worker thread.  Handling data shared between threads.  Recursive functions. Continuing from the tenth article about sudoku.   Last article we worked with a modal dialog to help maintain informat…
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.
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

821 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