Partilhar via


CDateTimeCtrl Classe

Observação

A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Encapsula a funcionalidade de um controlo seletor de data e hora.

Sintaxe

class CDateTimeCtrl : public CWnd

Membros

Construtores Públicos

Nome Description
CDateTimeCtrl::CDateTimeCtrl Constrói um CDateTimeCtrl objeto.

Métodos Públicos

Nome Description
CDateTimeCtrl::CloseMonthCal Fecha o controlo do seletor de data e hora atual.
CDateTimeCtrl::Create Cria o controlo do seletor de data e hora e anexa-o ao CDateTimeCtrl objeto.
CDateTimeCtrl::GetDateTimePickerInfo Recupera informações sobre o controlo do seletor de data e hora atuais.
CDateTimeCtrl::GetIdealSize Devolve o tamanho ideal do controlo do seletor de data e hora necessário para mostrar a data ou hora atual.
CDateTimeCtrl::GetMonthCalColor Recupera a cor de uma determinada parte do calendário do mês dentro do controlo do seletor de data e hora.
CDateTimeCtrl::GetMonthCalCtrl Recupera o CMonthCalCtrl objeto associado ao controlo do seletor de data e hora.
CDateTimeCtrl::GetMonthCalFont Recupera a fonte atualmente usada pelo controlo de calendário de mês filho do seletor de data e hora.
CDateTimeCtrl::GetMonthCalStyle Obtém o estilo do seletor de data e hora atuais.
CDateTimeCtrl::GetRange Recupera os tempos mínimos e máximos permitidos do sistema atuais para um controlo de seletor de data e hora.
CDateTimeCtrl::GetTime Recupera a hora selecionada atualmente de um controlo de seletor de data e hora e coloca-a numa estrutura especificada SYSTEMTIME .
CDateTimeCtrl::SetFormat Define a visualização de um controlo de seletor de data e hora de acordo com uma dada cadeia de formato.
CDateTimeCtrl::SetMonthCalColor Define a cor para uma dada parte do calendário do mês dentro de um controlo do seletor de data e hora.
CDateTimeCtrl::SetMonthCalFont Define a fonte que o controlo de calendário do seletor de data e hora irá usar.
CDateTimeCtrl::SetMonthCalStyle Define o estilo do controlo atual do seletor de data e hora.
CDateTimeCtrl::SetRange Define os tempos mínimos e máximos permitidos do sistema para um controlo de seleção de data e hora.
CDateTimeCtrl::SetTime Define a hora num controlo de seletor de data e hora.

Observações

O controlo do seletor de data e hora (controlo DTP) fornece uma interface simples para trocar informações de data e hora com o utilizador. Esta interface contém campos, cada um dos quais apresenta uma parte da data e hora armazenada no controlo. O utilizador pode alterar a informação armazenada no controlo alterando o conteúdo da cadeia num dado campo. O utilizador pode mover-se de campo em campo usando o rato ou o teclado.

Pode personalizar o controlo do seletor de data e hora aplicando uma variedade de estilos ao objeto quando o cria. Consulte Estilos de Controlo do Seletor de Data e Hora no SDK do Windows para mais informações sobre estilos específicos do controlo do seletor de data e hora. Pode definir o formato de exibição do controlo DTP usando estilos de formatação. Estes estilos de formato são descritos em "Estilos de Formato" no tópico Estilos de Controlo do Seletor de Data e Hora do SDK do Windows.

O controlo do seletor de data e hora também utiliza notificações e callbacks, que são descritos em Using CDateTimeCtrl.

Hierarquia de herança

CObject

CCmdTarget

CWnd

CDateTimeCtrl

Requerimentos

Cabeçalho:afxdtctl.h

CDateTimeCtrl::CDateTimeCtrl

Constrói um CDateTimeCtrl objeto.

CDateTimeCtrl();

CDateTimeCtrl::CloseMonthCal

Fecha o controlo do seletor de data e hora atual.

void CloseMonthCal() const;

Observações

Este método envia a DTM_CLOSEMONTHCAL mensagem, que é descrita no SDK do Windows.

Example

O primeiro exemplo de código define a variável, m_dateTimeCtrl, que é usada para aceder programaticamente ao controlo do seletor de data e hora. Esta variável é usada no exemplo seguinte.

// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;

O próximo exemplo de código fecha o calendário suspenso para o controlo atual do seletor de data e hora.

void CCDateTimeCtrl_s1Dlg::OnXClosemonthcal()
{
   // Close the month calendar control dropdown.
   m_dateTimeCtrl.CloseMonthCal();
}

CDateTimeCtrl::Create

Cria o controlo do seletor de data e hora e anexa-o ao CDateTimeCtrl objeto.

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parâmetros

dwStyle
Especifica a combinação de estilos de controlo data-hora. Consulte Estilos de Controlo do Seletor de Data e Hora no SDK do Windows para mais informações sobre estilos de seletores de data e hora.

rect
Uma referência a uma RECT estrutura, que é a posição e o tamanho do controlo do seletor de data e hora.

pParentWnd
Um apontador para um CWnd objeto que é a janela pai do controlo do seletor de data e hora. Não pode ser NULL.

nID
Especifica o ID de controlo do seletor de data e hora.

Valor de retorno

Não nulo se a criação fosse bem-sucedida; caso contrário, 0.

Observações

Para criar um controlo de seletor de data e hora
  1. Chamada CDateTimeCtrl para construir um CDateTimeCtrl objeto.

  2. Chame esta função membro, que cria o controlo seletor de data e hora do Windows e o anexa ao CDateTimeCtrl objeto.

Quando chama Create, os controlos comuns são inicializados.

Example

// choose an arbitrary rectangle for creation
CRect rect(20, 20, 120, 45);
m_DateTimeCtrl.Create(WS_VISIBLE | WS_CHILD | WS_TABSTOP | DTS_SHOWNONE |
                          DTS_SHORTDATEFORMAT,
                      rect, this, IDC_DATETIMECTRL);

CDateTimeCtrl::GetDateTimePickerInfo

Recupera informações sobre o controlo do seletor de data e hora atuais.

BOOL GetDateTimePickerInfo(LPDATETIMEPICKERINFO pDateTimePickerInfo) const;

Parâmetros

pDateTimePickerInfo
[fora] Um ponteiro para uma DATETIMEPICKERINFO estrutura que recebe uma descrição do controlo atual do seletor de data e hora. O chamador é responsável por alocar esta estrutura. No entanto, este método inicializa o cbSize elemento da estrutura.

Valor de retorno

TRUE se este método for bem-sucedido; caso contrário, FALSE.

Observações

Este método envia a DTM_GETDATETIMEPICKERINFO mensagem, que é descrita no SDK do Windows.

Example

O primeiro exemplo de código define a variável, m_dateTimeCtrl, que é usada para aceder programaticamente ao controlo do seletor de data e hora. Esta variável é usada no exemplo seguinte.

// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;

O exemplo de código seguinte indica se recupera com sucesso informações sobre o controlo atual do seletor de data e hora.

void CCDateTimeCtrl_s1Dlg::OnXGetdatetimepickerinfo()
{
   // Get information about the date-time picker control.
   DATETIMEPICKERINFO dtpi = {0};
   dtpi.cbSize = sizeof(DATETIMEPICKERINFO);
   BOOL rc = m_dateTimeCtrl.GetDateTimePickerInfo(&dtpi);
   if (rc == TRUE)
      AfxMessageBox(_T("Information retrieved"),
                    MB_ICONEXCLAMATION);
   else
      AfxMessageBox(_T("Information was not retrieved"));
}

CDateTimeCtrl::GetMonthCalColor

Recupera a cor de uma determinada parte do calendário do mês dentro do controlo do seletor de data e hora.

COLORREF GetMonthCalColor(int iColor) const;

Parâmetros

iColor
Um int valor que especifica qual a área de cor do calendário do mês a recuperar. Para uma lista de valores, veja o iColor parâmetro para SetMonthCalColor.

Valor de retorno

Um valor que representa a definição de cor para a parte especificada do controlo do calendário do mês, caso seja COLORREF bem-sucedido. A função devolve -1 se não for bem-sucedida.

Observações

Esta função membro implementa o comportamento da mensagem DTM_GETMCCOLORWin32 , conforme descrito no SDK do Windows.

Example

// Set the color for the text in the control and
// assure it was set properly. Unlike the GetMonthCalCtrl() member,
// GetMonthCalColor() and SetMonthCalColor() can be used at any time.
m_DateTimeCtrl.SetMonthCalColor(MCSC_TEXT, RGB(255, 0, 0));
VERIFY(m_DateTimeCtrl.GetMonthCalColor(MCSC_TEXT) == RGB(255, 0, 0));

CDateTimeCtrl::GetMonthCalCtrl

Recupera o CMonthCalCtrl objeto associado ao controlo do seletor de data e hora.

CMonthCalCtrl* GetMonthCalCtrl() const;

Valor de retorno

Um apontador para um CMonthCalCtrl objeto, ou NULL se não for bem-sucedido, ou se a janela não for visível.

Observações

Os controlos do seletor de data e hora criam um controlo de calendário do mês filho quando o utilizador seleciona a seta suspensa. Quando o CMonthCalCtrl objeto deixa de ser necessário, é destruído, por isso a sua aplicação não deve depender de armazenar o objeto que representa o calendário de meses filho do seletor de datas-horas.

Example

void CDateTimeDlg::OnDropDownDateTimeCtrl(NMHDR *pNMHDR, LRESULT *pResult)
{
   UNREFERENCED_PARAMETER(pNMHDR);

   // note that GetMonthCalCtrl() will only return a pointer to the
   // month calendar control while the control actually exists--that is,
   // while it has been dropped-down by the user. Otherwise, the function
   // returns NULL. One appropriate time to get the control is while
   // handling the DTN_DROPDOWN notification for the date time picker
   // control.

   // get the control
   CMonthCalCtrl *pMoCalCtrl = m_DateTimeCtrl.GetMonthCalCtrl();
   ASSERT(pMoCalCtrl != NULL);

   // now, pMoCalCtrl is useful...

   *pResult = 0;
}

CDateTimeCtrl::GetMonthCalFont

Obtém a fonte atualmente usada pelo controlo de calendário mensal do seletor de data e hora.

CFont* GetMonthCalFont() const;

Valor de retorno

Um apontador para um CFont objeto, ou NULL se não for bem-sucedido.

Observações

O CFont objeto apontado pelo valor de retorno é um objeto temporário e é destruído durante o próximo tempo de processamento ocioso.

CDateTimeCtrl::GetMonthCalStyle

Obtém o estilo do controlo mensal suspenso do calendário associado ao controlo atual do seletor de data e hora.

DWORD GetMonthCalStyle() const;

Valor de retorno

O estilo do controlo mensal suspenso do calendário, que é uma combinação bit a bit (OR) dos estilos de controlo do seletor de data e hora. Para mais informações, consulte Estilos de Controlo do Calendário Mensal.

Observações

Este método envia a DTM_GETMCSTYLE mensagem, que é descrita no SDK do Windows.

CDateTimeCtrl::GetRange

Recupera os tempos mínimos e máximos permitidos do sistema atuais para um controlo de seletor de data e hora.

DWORD GetRange(
    COleDateTime* pMinRange,
    COleDateTime* pMaxRange) const;

DWORD GetRange(
    CTime* pMinRange,
    CTime* pMaxRange) const;

Parâmetros

pMinRange
Um apontador para um COleDateTime objeto ou para um CTime objeto contendo o tempo mais antigo permitido no CDateTimeCtrl objeto.

pMaxRange
Um apontador para um COleDateTime objeto ou CTime um objeto contendo o tempo mais recente permitido no CDateTimeCtrl objeto.

Valor de retorno

Um DWORD valor contendo flags que indicam quais os intervalos definidos. Se

return value & GDTR_MAX == 0

então o segundo parâmetro é válido. De forma semelhante, se

return value & GDTR_MIN == 0

então o primeiro parâmetro é válido.

Observações

Esta função membro implementa o comportamento da mensagem DTM_GETRANGEWin32 , conforme descrito no SDK do Windows. Na implementação do MFC, podes especificar qualquer um COleDateTime dos usos ou CTime .

Example

// This function will set several ranges in the control, then
// call the ShowRange() function to show the set ranges to the
// user.
void CDateTimeDlg::OnBnClickedRangesbutton()
{
   // Set minimum of January 1st, 1995 with no maximum.
   COleDateTime dtMin;
   COleDateTime dtMax;

   dtMin = COleDateTime(1995, 1, 1, 0, 0, 0);
   dtMax.SetStatus(COleDateTime::null);
   m_DateTimeCtrl.SetRange(&dtMin, &dtMax);
   ShowRange(&m_DateTimeCtrl);

   // Set no minimum and maximum of September 30th, 1997.
   dtMin.SetStatus(COleDateTime::null);
   dtMax = COleDateTime(1997, 9, 30, 0, 0, 0);
   m_DateTimeCtrl.SetRange(&dtMin, &dtMax);
   ShowRange(&m_DateTimeCtrl);

   // Set minimum of April 15, 1992 and maximum of June 5, 2002.
   dtMin = COleDateTime(1992, 4, 15, 0, 0, 0);
   dtMax = COleDateTime(2002, 6, 5, 0, 0, 0);
   m_DateTimeCtrl.SetRange(&dtMin, &dtMax);
   ShowRange(&m_DateTimeCtrl);
}

void CDateTimeDlg::ShowRange(CDateTimeCtrl *pCtrl)
{
   ASSERT(pCtrl != NULL);
   CString strMessage;
   COleDateTime dtMinimum;
   COleDateTime dtMaximum;

   // Get the range.
   DWORD dwResult = pCtrl->GetRange(&dtMinimum, &dtMaximum);

   // If a minimum was specified, format it.
   // Otherwise, indicate that there is no lower bound.
   if (dwResult & GDTR_MIN)
      strMessage += dtMinimum.Format(_T("Minimum range is %x %X.\r\n"));
   else
      strMessage += _T("No minimum range.\r\n");

   // Treat maximum similarly.
   if (dwResult & GDTR_MAX)
      strMessage += dtMaximum.Format(_T("Maximum range is %x %X.\r\n"));
   else
      strMessage += _T("No maximum range.\r\n");

   // Show the user.
   AfxMessageBox(strMessage);
}

CDateTimeCtrl::GetTime

Recupera a hora selecionada atualmente de um controlo de seletor de data e hora e coloca-a numa estrutura especificada SYSTEMTIME .

BOOL GetTime(COleDateTime& timeDest) const;
DWORD GetTime(CTime& timeDest) const;
DWORD GetTime(LPSYSTEMTIME pTimeDest) const;

Parâmetros

timeDest
Na primeira versão, uma referência a um COleDateTime objeto que irá receber a informação de tempo do sistema. Na segunda versão, uma referência a um CTime objeto que irá receber a informação de tempo do sistema.

pTimeDest
Um ponteiro para a SYSTEMTIME estrutura para receber a informação de tempo do sistema. Não pode ser NULL.

Valor de retorno

Na primeira versão, diferente de zero se o tempo for escrito com sucesso no COleDateTime objeto; caso contrário, 0. Na segunda e terceira versões, um DWORD valor igual ao dwFlag conjunto de membros na NMDATETIMECHANGE estrutura. Consulte a secção de Observações abaixo para mais informações.

Observações

Esta função membro implementa o comportamento da mensagem DTM_GETSYSTEMTIMEWin32 , conforme descrito no SDK do Windows. Na implementação MFC de GetTime, podes usar COleDateTime classes or CTime , ou podes usar uma SYSTEMTIME estrutura, para armazenar a informação temporal.

O valor DWORD de retorno na segunda e terceira versões, acima, indica se o controlo do seletor de data e hora está definido para o estado "sem data", como indicado no NMDATETIMECHANGE membro dwFlagsda estrutura . Se o valor devolvido for GDT_NONEigual a , o controlo é definido para o estado "sem data" e utiliza o DTS_SHOWNONE estilo. Se o valor devolvido for GDT_VALIDigual a , o tempo do sistema é armazenado com sucesso na localização de destino.

Example

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

CDateTimeCtrl::GetIdealSize

Devolve o tamanho ideal do controlo do seletor de data e hora necessário para mostrar a data ou hora atual.

BOOL GetIdealSize(LPSIZE psize) const;

Parâmetros

psize
[fora] Apontador para uma SIZE estrutura que contém o tamanho ideal para o controlo.

Valor de retorno

O valor de retorno é sempre TRUE.

Observações

Este método envia a DTM_GETIDEALSIZE mensagem, que é descrita no SDK do Windows.

Example

O primeiro exemplo de código define a variável, m_dateTimeCtrl, que é usada para aceder programaticamente ao controlo do seletor de data e hora. Esta variável é usada no exemplo seguinte.

// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;

O próximo exemplo de código recupera o tamanho ideal para mostrar o controlo do seletor de data e hora.

// Add extra initialization here

// Associate a menu with the splitbutton control.
m_splitbutton.SetDropDownMenu(IDR_MENU1, 0);

// Resize the date-time picker control.
SIZE sz;
m_dateTimeCtrl.GetIdealSize(&sz);
if ((sz.cx != 0) && (sz.cy != 0))
{
   m_dateTimeCtrl.SetWindowPos(
       this,
       0, 0, sz.cx, sz.cy,
       (SWP_NOMOVE | SWP_NOZORDER | SWP_NOREPOSITION | SWP_NOACTIVATE));
}

// End of extra initialization

CDateTimeCtrl::SetFormat

Define a visualização de um controlo de seletor de data e hora de acordo com uma dada cadeia de formato.

BOOL SetFormat(LPCTSTR pstrFormat);

Parâmetros

pstrFormat
Um ponteiro para uma cadeia de formato terminada em zero que define o ecrã desejado. Definir este parâmetro para NULL reinicia o controlo para a string de formato padrão para o estilo atual.

Valor de retorno

Não nulo se for bem-sucedido; caso contrário, 0.

Observação

A entrada do utilizador não determina o sucesso ou fracasso desta chamada.

Observações

Esta função membro implementa o comportamento da mensagem DTM_SETFORMATWin32 , conforme descrito no SDK do Windows.

Example

// The control will create itself with a format that matches the
// locale setting in Control Panel. But we can force a particular
// format with a call to SetFormat(). This call forces the format
// dd-MMM-yy, which would show 03-APR-98 for April 3rd, 1998.
m_DateTimeCtrl.SetFormat(_T("dd-MMM-yy"));

CDateTimeCtrl::SetMonthCalColor

Define a cor para uma dada parte do calendário do mês dentro de um controlo do seletor de data e hora.

COLORREF SetMonthCalColor(
    int iColor,
    COLORREF ref);

Parâmetros

iColor
int valor que especifica qual área do mês controlo do calendário a definir. Este valor pode ser um dos seguintes.

Valor Meaning
MCSC_BACKGROUND Define a cor de fundo exibida entre meses.
MCSC_MONTHBK Define a cor de fundo exibida dentro de um mês.
MCSC_TEXT Defina a cor usada para mostrar o texto dentro de um mês.
MCSC_TITLEBK Defina a cor de fundo apresentada no título do calendário.
MCSC_TITLETEXT Defina a cor usada para mostrar o texto no título do calendário.
MCSC_TRAILINGTEXT Defina a cor usada para mostrar o cabeçalho e o texto do dia final. Os dias de cabeçalho e de final são os dias dos meses anteriores e seguintes que aparecem no calendário atual.

ref
Um valor que COLORREF representa a cor que será definida para a área especificada do calendário mensal.

Valor de retorno

Um valor que representa a configuração de cor anterior para a parte especificada do calendário do mês controla, se for COLORREF bem-sucedido. Caso contrário, a mensagem devolve -1.

Observações

Esta função membro implementa o comportamento da mensagem DTM_SETMCCOLORWin32 , conforme descrito no SDK do Windows.

Example

Veja o exemplo para CDateTimeCtrl::GetMonthCalColor.

CDateTimeCtrl::SetMonthCalFont

Define a fonte que o controlo de calendário do seletor de data e hora irá usar.

void SetMonthCalFont(
    HFONT hFont,
    BOOL bRedraw = TRUE);

Parâmetros

hFont
Handle para a fonte que será definida.

bRedraw
Especifica se o controlo deve ser redesenhado imediatamente após a definição da fonte. Definir este parâmetro para TRUE faz com que o controlo se volte a desenhar.

Observações

Esta função membro implementa o comportamento da mensagem DTM_SETMCFONTWin32 , conforme descrito no SDK do Windows.

Example

// The following code example would most likely appear
// in the OnInitDialog function of your dialog class.
// It creates a font (Arial, 10 pixels high) and if successful,
// stores the result in m_MonthFont, a member of your
// dialog class declared as follows:
//    CFont m_MonthFont;
// SetMonthCalFont is then called passing in the new font,
// causing the month calendar control to display all
// text and dates with an Arial font.

//initializing the necessary members of the LOGFONT
// structure

LOGFONT lf;
memset(&lf, 0, sizeof(lf));
lf.lfHeight = 10;
_tcscpy_s(lf.lfFaceName, LF_FACESIZE, _T("Arial"));

if (m_MonthFont.CreateFontIndirect(&lf))
{
   // if successful, set the month calendar font
   m_DateTimeCtrl.SetMonthCalFont((HFONT)m_MonthFont);
}

Observação

Se usar este código, vai querer criar um membro da sua CDialogclasse derivada chamado m_MonthFont de tipo CFont.

CDateTimeCtrl::SetMonthCalStyle

Define o estilo do controlo mensal do calendário suspenso associado ao controlo atual do seletor de data e hora.

DWORD SetMonthCalStyle(DWORD dwStyle);

Parâmetros

dwStyle
[dentro] Um novo estilo de controlo de calendário mensal, que é uma combinação bit a bit (OR) dos estilos de controlo de calendário mensal. Para mais informações, consulte Estilos de Controlo do Calendário Mensal.

Valor de retorno

O estilo anterior do controlo mensal com menu suspenso.

Observações

Este método envia a DTM_SETMCSTYLE mensagem, que é descrita no SDK do Windows.

Example

O primeiro exemplo de código define a variável, m_dateTimeCtrl, que é usada para aceder programaticamente ao controlo do seletor de data e hora. Esta variável é usada no exemplo seguinte.

// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;

O próximo exemplo de código define o controlo do seletor de data e hora para mostrar números de semana, nomes abreviados dos dias da semana e nenhum indicador de hoje.

// Set the style of the month-calendar control dropdown.
void CCDateTimeCtrl_s1Dlg::OnSetmonthcalstyleWeeknumber()
{
   m_dateTimeCtrl.SetMonthCalStyle(MCS_WEEKNUMBERS);
}

void CCDateTimeCtrl_s1Dlg::OnSetmonthcalstyleNotoday()
{
   m_dateTimeCtrl.SetMonthCalStyle(MCS_NOTODAY);
}

void CCDateTimeCtrl_s1Dlg::OnSetmonthcalstyleShortdaysofweek()
{
   m_dateTimeCtrl.SetMonthCalStyle(MCS_SHORTDAYSOFWEEK);
}

CDateTimeCtrl::SetRange

Define os tempos mínimos e máximos permitidos do sistema para um controlo de seleção de data e hora.

BOOL SetRange(
    const COleDateTime* pMinRange,
    const COleDateTime* pMaxRange);

BOOL SetRange(
    const CTime* pMinRange,
    const CTime* pMaxRange);

Parâmetros

pMinRange
Um apontador para um COleDateTime objeto ou para um CTime objeto contendo o tempo mais antigo permitido no CDateTimeCtrl objeto.

pMaxRange
Um apontador para um COleDateTime objeto ou CTime um objeto contendo o tempo mais recente permitido no CDateTimeCtrl objeto.

Valor de retorno

Não nulo se for bem-sucedido; caso contrário, 0.

Observações

Esta função membro implementa o comportamento da mensagem DTM_SETRANGEWin32 , conforme descrito no SDK do Windows. Na implementação do MFC, podes especificar qualquer um COleDateTime dos usos ou CTime . Se o COleDateTime objeto tiver um NULL estado, a distância será removida. Se o CTime ponteiro ou o COleDateTime ponteiro for NULL, o intervalo será removido.

Example

Veja o exemplo para CDateTimeCtrl::GetRange.

CDateTimeCtrl::SetTime

Define a hora num controlo de seletor de data e hora.

BOOL SetTime(const COleDateTime& timeNew);
BOOL SetTime(const CTime* pTimeNew);
BOOL SetTime(LPSYSTEMTIME pTimeNew = NULL);

Parâmetros

timeNew
Uma referência a um COleDateTime objeto que contenha o para o qual o controlo será definido.

pTimeNew
Na segunda versão acima, um apontador para um CTime objeto contendo o tempo para o qual o controlo será definido. Na terceira versão acima, um ponteiro para uma SYSTEMTIME estrutura contendo o tempo para o qual o controlo será definido.

Valor de retorno

Não nulo se for bem-sucedido; caso contrário, 0.

Observações

Esta função membro implementa o comportamento da mensagem DTM_SETSYSTEMTIMEWin32 , conforme descrito no SDK do Windows. Na implementação MFC de SetTime, podes usar as COleDateTime classes ou CTime , ou podes usar uma SYSTEMTIME estrutura, para definir a informação temporal.

Example

// set with a CTime
CTime timeTime(1998, 4, 3, 0, 0, 0);
VERIFY(m_DateTimeCtrl.SetTime(&timeTime));

// set with a COleDateTime object
COleDateTime oletimeTime(1998, 4, 3, 0, 0, 0);
VERIFY(m_DateTimeCtrl.SetTime(oletimeTime));

// set using the SYSTEMTIME
SYSTEMTIME sysTime;
memset(&sysTime, 0, sizeof(sysTime));
sysTime.wYear = 1998;
sysTime.wMonth = 4;
sysTime.wDay = 3;
VERIFY(m_DateTimeCtrl.SetTime(&sysTime));

Consulte também

Exemplo MFC CMNCTRL1
CWnd Classe
Gráfico de Hierarquia
CMonthCalCtrl Classe