CDateTimeCtrl::GetTime
從日期時間選擇器控制項在指定的 SYSTEMTIME 結構擷取目前選取的時間來放置。
BOOL GetTime(
COleDateTime& timeDest
) const;
DWORD GetTime(
CTime& timeDest
) const;
DWORD GetTime(
LPSYSTEMTIME pTimeDest
) const;
參數
timeDest
在第一個版本,則將會取得系統時間資訊的 COleDateTime 物件的參考。 在第二個版本,則將會取得系統時間資訊的 CTime 物件的參考。pTimeDest
要取得系統時間資訊的 SYSTEMTIME 結構的指標。 不得為 NULL。
傳回值
在第一個版本中,如果不是零,時間會 COleDateTime 物件成功寫入,則為 0。 在第二和第三個版本, DWORD 值等於在 NMDATETIMECHANGE 組態設定的 dwFlag 成員。 請參閱以下 備註 章節以取得詳細資訊。
備註
此成員函式實作 Win32 訊息 DTM_GETSYSTEMTIME的行為 Windows SDK,如中所述。 在 GetTime的 MFC 實作,您可以使用 COleDateTime 或 CTime 類別,也可以使用 SYSTEMTIME 結構,儲存時間資訊。
在第二和第三個版本的傳回值, DWORD 頂端,如 NMDATETIMECHANGE 結構成員 dwFlags所示表示日期時間選擇器控制項是否設定為「date」沒有狀態。 如果傳回的值等於 GDT_NONE,控制項會將設定為「date」沒有狀態,並使用 DTS_SHOWNONE 樣式。 如果傳回的值等於 GDT_VALID,系統時間在目的位置成功儲存。
範例
void CDateTimeDlg::OnBnClickedTimebutton()
{
// get as a CTime
CTime timeTime;
DWORD dwResult = m_DateTimeCtrl.GetTime(timeTime);
if (dwResult == GDT_VALID)
{
// the user checked the box and specified data
CString str;
// is it a time-only control, or a date-only control?
if ((m_DateTimeCtrl.GetStyle() & DTS_TIMEFORMAT) == DTS_TIMEFORMAT)
str = timeTime.Format(_T("%X"));
else
str = timeTime.Format(_T("%x"));
AfxMessageBox(str);
}
else
{
// the user unmarked the "none" box
AfxMessageBox(_T("Time not set!"));
}
// Calling as SYSTIME is much the same, but calling for a COleDateTime
// has us test the state of the COleDateTime object for validity to
// see if the user did or didn't check the "none" box.
}
需求
Header: afxdtctl.h