Professional UI Solutions
Site Map   /  Register
 
 

Forum

Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS Tech Support » Unable to change from "PM" to "AM" in CExtGridCellDateTime when hour is set to 12. Collapse All
Subject Author Date
Daniel Verret Jan 7, 2011 - 10:48 AM

There is a major bug in CExtGridCellDateTime.  It’s not possible to switch from PM to AM by pressing "A" when hour is set to 12.

Technical Support Jan 18, 2011 - 3:05 AM

Yes. Please drop us an e-mail to the support mail box so we will provide you with the source code update.

Technical Support Jan 11, 2011 - 11:15 AM

Thank you for reporting this issue. The CExtDateTimeWnd::OnKeyDown() method contains the below big switch statement. Please update the source code for its last default part:

    default:
        if( ! IsReadOnly() )
        {
            CString sAM = OnQueryTimeDesignatorAM();
            CString sPM = OnQueryTimeDesignatorPM();
            if(        !sAM.IsEmpty() 
                &&    sAM[0] == (TCHAR)nChar 
                &&    !OnQueryTimeFormat24Hours() 
                )
            {
                INT nHour = m_dtDate.GetHour();
                if( nHour >= 12 )
                {
                    SetDateTime(
                        m_dtDate.GetYear(),
                        m_dtDate.GetMonth(),
                        m_dtDate.GetDay(),
                        nHour - 12,
                        m_dtDate.GetMinute(),
                        m_dtDate.GetSecond(),
                        false, true
                        );
                    m_bBlankHour = false;
                }
            }
            else if(    !sPM.IsEmpty() 
                    &&    sPM[0] == (TCHAR)nChar 
                    &&    !OnQueryTimeFormat24Hours() 
                    )
            {
                INT nHour = m_dtDate.GetHour();
                if( nHour < 12 )
                {
                    SetDateTime(
                        m_dtDate.GetYear(),
                        m_dtDate.GetMonth(),
                        m_dtDate.GetDay(),
                        nHour + 12,
                        m_dtDate.GetMinute(),
                        m_dtDate.GetSecond(),
                        false, true
                        );
                    m_bBlankHour = false;
                }
            }
            else
            {    
                CExtDurationWnd::OnKeyDown(nChar, nRepCnt, nFlags);
                return;
            }
        }
        else
        {    
            CExtDurationWnd::OnKeyDown(nChar, nRepCnt, nFlags);
            return;
        }


Daniel Verret Jan 12, 2011 - 9:05 AM

Ok, I Just download Prof-UIS 2.91, made the change in the .cpp files, recompile...


and now I have a new problems:


First, the date/time is displayed normally thenwhen I click on the date/time to edit it, the control : Show :  "1JanJanuary/12/201110:00:00AM" instead of "1/12/2001 10:00:00 AM".


It is a bug in 2.91 ?