CDateTimeCtrl::GetTime
Recupera o tempo atualmente selecionados de um controle seletor de data e hora e os coloca em uma estrutura específica de SYSTEMTIME .
BOOL GetTime(
COleDateTime& timeDest
) const;
DWORD GetTime(
CTime& timeDest
) const;
DWORD GetTime(
LPSYSTEMTIME pTimeDest
) const;
Parâmetros
mais timeDest
Em a primeira versão, uma referência a um objeto de COleDateTime que recebe informações de tempo do sistema.Em a segunda versão, uma referência a um objeto de CTime que recebe informações de tempo do sistema.mais pTimeDest
Um ponteiro para a estrutura de SYSTEMTIME para receber informações de tempo do sistema.Não deve ser NULO.
Valor de retorno
Em a primeira versão, diferente de zero se o tempo são gravados com êxito o objeto de COleDateTime ; se não 0.Em a segunda e terceira versões, um valor de DWORD igual ao membro de dwFlag definido na estrutura de NMDATETIMECHANGE .Consulte a seção de Comentários abaixo para mais informações.
Comentários
Essa função de membro implementa o comportamento de mensagem DTM_GETSYSTEMTIMEWin32, como descrito em Windows SDK.Em a implementação de GetTimeMFC, você pode usar COleDateTime ou classes de CTime , ou você pode usar uma estrutura de SYSTEMTIME , para armazenar informações de tempo.
O valor de retorno DWORD na segunda e terceira, versões anteriores, indica se o controle seletor de data e hora é definido para o status de “nenhuma data”, conforme indicado no membro de estrutura dwFlagsde NMDATETIMECHANGE .Se o valor retornado é igual GDT_NONE, o controle é definido para o status de “nenhuma data”, e usa o estilo de DTS_SHOWNONE .Se o valor retornado é igual GDT_VALID, o tempo do sistema são armazenados com êxito no local de destino.
Exemplo
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.
}
Requisitos
Cabeçalho: afxdtctl.h