Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Esta seção contém informações sobre elementos de programação usados com controles de calendário de mês.
Visão geral
| Tópico | Índice |
|---|---|
| Sobre os controles de calendário do mês | Um controle de calendário de mês implementa uma interface de usuário semelhante a um calendário. |
| Usando controles de calendário de mês | Esta seção fornece informações sobre a programação de controles de calendário do mês. |
Macros
| Tópico | Índice |
|---|---|
| MonthCal_GetCalendarBorder | Obtém o tamanho da borda, em pixels, de um controle de calendário mensal. Você pode usar essa macro ou enviar a mensagem MCM_GETCALENDARBORDER explicitamente. |
| MonthCal_GetCalendarCount | Obtém o número de calendários atualmente exibidos no controle de calendário. Você pode usar essa macro ou enviar a mensagem MCM_GETCALENDARCOUNT explicitamente. |
| MonthCal_GetCalendarGridInfo | Obtém informações sobre uma grade de calendário. |
| MonthCal_GetCALID | Obtém a ID de calendário atual para o controle de calendário determinado. Você pode usar essa macro ou enviar a mensagem MCM_GETCALID explicitamente. |
| MonthCal_GetColor | Recupera a cor de uma determinada parte de um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_GETCOLOR explicitamente. |
| MonthCal_GetCurrentView | Obtém a exibição para um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_GETCURRENTVIEW explicitamente. |
| MonthCal_GetCurSel | Recupera a data selecionada no momento. Você pode usar essa macro ou enviar a mensagem MCM_GETCURSEL explicitamente. |
| MonthCal_GetFirstDayOfWeek | Recupera o primeiro dia da semana para um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_GETFIRSTDAYOFWEEK explicitamente. |
| MonthCal_GetMaxSelCount | Recupera o intervalo de datas máximo que pode ser selecionado em um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_GETMAXSELCOUNT explicitamente. |
| MonthCal_GetMaxTodayWidth | Recupera a largura máxima da cadeia de caracteres "hoje" em um controle de calendário de mês. Isso inclui o texto do rótulo e o texto da data. Você pode usar essa macro ou enviar a mensagem MCM_GETMAXTODAYWIDTH explicitamente. |
| MonthCal_GetMinReqRect | Recupera o tamanho mínimo necessário para exibir um mês inteiro em um controle de calendário de mês. As informações de tamanho são apresentadas na forma de uma estrutura deRECT. Você pode usar essa macro ou enviar a mensagem MCM_GETMINREQRECT explicitamente. |
| MonthCal_GetMonthDelta | Recupera a taxa de rolagem para um controle de calendário mensal. A taxa de rolagem é o número de meses em que o controle move sua exibição quando o usuário clica em um botão de rolagem. Você pode usar essa macro ou enviar a mensagem MCM_GETMONTHDELTA explicitamente. |
| MonthCal_GetMonthRange | Recupera informações de data (usando estruturas de SYSTEMTIME) que representam os limites alto e baixo da exibição de um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_GETMONTHRANGE explicitamente. |
| MonthCal_GetRange | Recupera as datas mínimas e máximas permitidas definidas para um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_GETRANGE explicitamente. |
| MonthCal_GetSelRange | Recupera informações de data que representam os limites superior e inferior do intervalo de datas atualmente selecionado pelo usuário. Você pode usar essa macro ou enviar a mensagem de MCM_GETSELRANGE explicitamente. |
| MonthCal_GetToday | Recupera as informações de data para a data especificada como "hoje" para um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_GETTODAY explicitamente. |
| MonthCal_GetUnicodeFormat | Recupera o sinalizador de formato de caractere Unicode para o controle. Você pode usar essa macro ou enviar a mensagem MCM_GETUNICODEFORMAT explicitamente. |
| MonthCal_HitTest | Determina qual parte de um controle de calendário mensal está em um determinado ponto na tela. Você pode usar essa macro ou enviar a mensagem MCM_HITTEST explicitamente. |
| MonthCal_SetCalendarBorder | Define o tamanho da borda, em pixels, de um controle de calendário mensal. Você pode usar essa macro ou enviar a mensagem MCM_SETCALENDARBORDER explicitamente. |
| MonthCal_SetCALID | Define a ID do calendário para o controle de calendário determinado. Você pode usar essa macro ou enviar a mensagem MCM_SETCALID explicitamente. |
| MonthCal_SetColor | Define a cor para uma determinada parte de um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_SETCOLOR explicitamente. |
| MonthCal_SetCurrentView | Define o modo de exibição para um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_SETCURRENTVIEW explicitamente. |
| MonthCal_SetCurSel | Define a data atualmente selecionada para um controle de calendário de mês. Se a data especificada não estiver em exibição, o controle atualiza a exibição para exibi-la. Você pode usar essa macro ou enviar a mensagem MCM_SETCURSEL explicitamente. |
| MonthCal_SetDayState | Define os estados de dia para todos os meses que estão atualmente visíveis dentro de um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_SETDAYSTATE explicitamente. |
| MonthCal_SetFirstDayOfWeek | Define o primeiro dia da semana para um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_SETFIRSTDAYOFWEEK explicitamente. |
| MonthCal_SetMaxSelCount | Define o número máximo de dias que podem ser selecionados em um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_SETMAXSELCOUNT explicitamente. |
| MonthCal_SetMonthDelta | Define a taxa de rolagem para um controle de calendário mensal. A taxa de rolagem é o número de meses em que o controle move sua exibição quando o usuário clica em um botão de rolagem. Você pode usar essa macro ou enviar a mensagem MCM_SETMONTHDELTA explicitamente. |
| MonthCal_SetRange | Define as datas mínimas e máximas permitidas para um controle de calendário mensal. Você pode usar essa macro ou enviar a mensagem MCM_SETRANGE explicitamente. |
| MonthCal_SetSelRange | Define a seleção de um controle de calendário de mês para um determinado intervalo de datas. Você pode usar essa macro ou enviar a mensagem MCM_SETSELRANGE explicitamente. |
| MonthCal_SetToday | Define a seleção "hoje" para um controle de calendário de mês. Você pode usar essa macro ou enviar a mensagem MCM_SETTODAY explicitamente. |
| MonthCal_SetUnicodeFormat | Define o sinalizador de formato de caractere Unicode para o controle. Esta mensagem permite que você altere o conjunto de caracteres usado pelo controle em tempo de execução em vez de ter que recriar o controle. Você pode usar essa macro ou enviar a mensagem MCM_SETUNICODEFORMAT explicitamente. |
| MonthCal_SizeRectToMin | Calcula quantos calendários caberão no retângulo determinado e, em seguida, retorna o tamanho mínimo que um retângulo precisa ter para caber nesse número de calendários. Você pode usar essa macro ou enviar a mensagem MCM_SIZERECTTOMIN explicitamente. |
Mensagens
| Tópico | Índice |
|---|---|
| MCM_GETCALENDARBORDER | Obtém o tamanho da borda, em pixels. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetCurrentView. |
| MCM_GETCALENDARCOUNT | Obtém o número de calendários atualmente exibidos no controle de calendário. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetCalendarCount. |
| MCM_GETCALENDARGRIDINFO | Obtém informações sobre uma grade de calendário. |
| MCM_GETCALID | Obtém a ID de calendário para o controle de calendário determinado. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetCALID. |
| MCM_GETCOLOR | Recupera a cor de uma determinada parte de um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetColor. |
| MCM_GETCURRENTVIEW | Obtém a vista atual do calendário. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetCurrentView. |
| MCM_GETCURSEL | Recupera a data selecionada no momento. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetCurSel. |
| MCM_GETFIRSTDAYOFWEEK | Recupera o primeiro dia da semana para um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetFirstDayOfWeek. |
| MCM_GETMAXSELCOUNT | Recupera o intervalo de datas máximo que pode ser selecionado em um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetMaxSelCount. |
| MCM_GETMAXTODAYWIDTH | Recupera a largura máxima da cadeia de caracteres "hoje" em um controle de calendário de mês. Isso inclui o texto do rótulo e o texto da data. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetMaxTodayWidth. |
| MCM_GETMINREQRECT | Recupera o tamanho mínimo necessário para exibir um mês inteiro em um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetMinReqRect. |
| MCM_GETMONTHDELTA | Recupera a taxa de rolagem para um controle de calendário mensal. A taxa de rolagem é o número de meses em que o controle move sua exibição quando o usuário clica em um botão de rolagem. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetMonthDelta. |
| MCM_GETMONTHRANGE | Recupera informações de data (usando estruturas de SYSTEMTIME) que representam os limites alto e baixo da exibição de um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetMonthRange. |
| MCM_GETRANGE | Recupera as datas mínimas e máximas permitidas definidas para um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetRange. |
| MCM_GETSELRANGE | Recupera informações de data que representam os limites superior e inferior do intervalo de datas atualmente selecionado pelo usuário. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetSelRange. |
| MCM_GETTODAY | Recupera as informações de data para a data especificada como "hoje" para um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_GetToday. |
| MCM_GETUNICODEFORMAT | Recupera o sinalizador de formato de caractere Unicode para o controle. Você pode enviar essa mensagem explicitamente ou usar a macro MonthCal_GetUnicodeFormat. |
| MCM_HITTEST | Determina qual parte de um controle de calendário mensal está em um determinado ponto na tela. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_HitTest. |
| MCM_SETCALENDARBORDER | Define o tamanho da borda, em pixels. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetCurrentView. |
| MCM_SETCALID | Define a ID do calendário para o controle de calendário determinado. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetCALID. |
| MCM_SETCOLOR | Define a cor para uma determinada parte de um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetColor. |
| MCM_SETCURRENTVIEW | Define o modo de exibição atual do calendário. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetCurrentView. |
| MCM_SETCURSEL | Define a data atualmente selecionada para um controle de calendário de mês. Se a data especificada não estiver em exibição, o controle atualiza a exibição para exibi-la. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetCurSel. |
| MCM_SETDAYSTATE | Define os estados de dia para todos os meses que estão atualmente visíveis dentro de um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetDayState. |
| MCM_SETFIRSTDAYOFWEEK | Define o primeiro dia da semana para um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetFirstDayOfWeek. |
| MCM_SETMAXSELCOUNT | Define o número máximo de dias que podem ser selecionados em um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetMaxSelCount. |
| MCM_SETMONTHDELTA | Define a taxa de rolagem para um controle de calendário mensal. A taxa de rolagem é o número de meses em que o controle move sua exibição quando o usuário clica em um botão de rolagem. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetMonthDelta. |
| MCM_SETRANGE | Define as datas mínimas e máximas permitidas para um controle de calendário mensal. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetRange. |
| MCM_SETSELRANGE | Define a seleção de um controle de calendário de mês para um determinado intervalo de datas. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetSelRange. |
| MCM_SETTODAY | Define a seleção "hoje" para um controle de calendário de mês. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SetToday. |
| MCM_SETUNICODEFORMAT | Define o sinalizador de formato de caractere Unicode para o controle. Esta mensagem permite que você altere o conjunto de caracteres usado pelo controle em tempo de execução em vez de ter que recriar o controle. Você pode enviar essa mensagem explicitamente ou usar a macro MonthCal_SetUnicodeFormat. |
| MCM_SIZERECTTOMIN | Calcula quantos calendários caberão no retângulo determinado e, em seguida, retorna o tamanho mínimo que um retângulo precisa ter para caber nesse número de calendários. Você pode enviar essa mensagem explicitamente ou usando a macro MonthCal_SizeRectToMin. |
Notificações
| Tópico | Índice |
|---|---|
| MCN_GETDAYSTATE | Enviado por um controle de calendário mensal para solicitar informações sobre como os dias individuais devem ser exibidos. Esse código de notificação é enviado somente por controles de calendário de mês que usam o estilo MCS_DAYSTATE e é enviado na forma de uma mensagem WM_NOTIFY. |
| MCN_SELCHANGE | Enviado por um controle de calendário mensal quando a data ou o intervalo de datas selecionado no momento é alterado. Este código de notificação é enviado na forma de uma mensagem WM_NOTIFY. |
| MCN_SELECT | Enviado por um controle de calendário de mês quando o usuário faz uma seleção de data explícita dentro de um controle de calendário de mês. Esta notificação é enviada sob a forma de uma mensagem WM_NOTIFY. |
| MCN_VIEWCHANGE | Enviado por um controle de calendário mensal quando o modo de exibição atual é alterado. Este código de notificação é enviado na forma de uma mensagem WM_NOTIFY. |
| NM_RELEASEDCAPTURE (mensal) | Notifica a janela pai de um controle monthcal de que o controle está liberando a captura do mouse. Esta notificação é enviada sob a forma de uma mensagem WM_NOTIFY. |
Estruturas
| Tópico | Índice |
|---|---|
| MCGRIDINFO | Contém informações sobre parte de um controle de calendário. |
| MCHITTESTINFO | Carrega informações específicas para pontos de teste de acerto para um controle de calendário de um mês. Essa estrutura é usada com a mensagem MCM_HITTEST e a macro MonthCal_HitTest correspondente. |
| NMDAYSTATE | Carrega as informações necessárias para processar o código de notificação MCN_GETDAYSTATE. Todos os membros dessa estrutura são para entrada, exceto prgDayState, que o aplicativo recetor deve definir ao processar MCN_GETDAYSTATE. |
| NMSELCHANGE | Carrega as informações necessárias para processar o código de notificação MCN_SELCHANGE. |
| NMVIEWCHANGE | Armazena as informações necessárias para processar o código de notificação MCN_VIEWCHANGE. |
Constantes
| Tópico | Índice |
|---|---|
| Estilos de controle de calendário de mês | As constantes de estilo a seguir são usadas ao criar controles de calendário de mês. |
Tipos de dados
| Tópico | Índice |
|---|---|
| MONTHDAYSTATE | O tipo de dados MONTHDAYSTATE é um campo de bits que contém o estado de cada dia em um mês. |