La classe CDateTimeCtrl
Encapsule les fonctionnalités d'un contrôle de sélecteur de date et d'heure.
Syntaxe
class CDateTimeCtrl : public CWnd
Membres
Constructeurs publics
Nom | Description |
---|---|
CDateTimeCtrl::CDateTimeCtrl |
Construit un objet CDateTimeCtrl . |
Méthodes publiques
Nom | Description |
---|---|
CDateTimeCtrl::CloseMonthCal |
Ferme le contrôle de sélecteur de date et d’heure actuel. |
CDateTimeCtrl::Create |
Crée le contrôle sélecteur de date et d’heure et l’attache à l’objet CDateTimeCtrl . |
CDateTimeCtrl::GetDateTimePickerInfo |
Récupère des informations sur le contrôle de sélecteur de date et d’heure actuel. |
CDateTimeCtrl::GetIdealSize |
Retourne la taille idéale du contrôle sélecteur de date et d’heure requis pour afficher la date ou l’heure actuelles. |
CDateTimeCtrl::GetMonthCalColor |
Récupère la couleur d’une partie donnée du calendrier du mois dans le contrôle du sélecteur de date et d’heure. |
CDateTimeCtrl::GetMonthCalCtrl |
Récupère l’objet CMonthCalCtrl associé au contrôle sélecteur de date et d’heure. |
CDateTimeCtrl::GetMonthCalFont |
Récupère la police actuellement utilisée par le contrôle calendrier du sélecteur de date et d’heure du mois enfant. |
CDateTimeCtrl::GetMonthCalStyle |
Obtient le style du contrôle du sélecteur de date et d’heure actuel. |
CDateTimeCtrl::GetRange |
Récupère les heures système minimales et maximales actuelles pour un contrôle de sélecteur de date et d’heure. |
CDateTimeCtrl::GetTime |
Récupère l’heure actuellement sélectionnée à partir d’un contrôle de sélecteur de date et d’heure et la place dans une structure spécifiée SYSTEMTIME . |
CDateTimeCtrl::SetFormat |
Définit l’affichage d’un contrôle sélecteur de date et d’heure conformément à une chaîne de format donnée. |
CDateTimeCtrl::SetMonthCalColor |
Définit la couleur d’une partie donnée du calendrier mensuel dans un contrôle de sélecteur de date et d’heure. |
CDateTimeCtrl::SetMonthCalFont |
Définit la police que le contrôle calendrier du sélecteur de date et d’heure utilise le contrôle calendrier du mois enfant. |
CDateTimeCtrl::SetMonthCalStyle |
Définit le style du contrôle de sélecteur de date et d’heure actuel. |
CDateTimeCtrl::SetRange |
Définit les heures système minimales et maximales autorisées pour un contrôle de sélecteur de date et d’heure. |
CDateTimeCtrl::SetTime |
Définit l’heure dans un contrôle sélecteur de date et d’heure. |
Notes
Le contrôle de sélecteur de date et d’heure (contrôle DTP) fournit une interface simple pour échanger des informations de date et d’heure avec un utilisateur. Cette interface contient des champs, chacun affichant une partie des informations de date et d’heure stockées dans le contrôle. L’utilisateur peut modifier les informations stockées dans le contrôle en modifiant le contenu de la chaîne dans un champ donné. L’utilisateur peut passer d’un champ à l’autre à l’aide de la souris ou du clavier.
Vous pouvez personnaliser le contrôle du sélecteur de date et d’heure en appliquant un large éventail de styles à l’objet lorsque vous le créez. Pour plus d’informations sur les styles de contrôle du sélecteur de date et d’heure dans le Kit de développement logiciel (SDK) Windows, consultez les styles spécifiques au contrôle du sélecteur de date et d’heure. Vous pouvez définir le format d’affichage du contrôle DTP à l’aide de styles de format. Ces styles de format sont décrits sous « Styles de mise en forme » dans la rubrique date et heure du sélecteur de paramètres du kit de développement logiciel (SDK) Windows.
Le contrôle du sélecteur de date et d’heure utilise également des notifications et des rappels, qui sont décrits dans Using CDateTimeCtrl
.
Hiérarchie d'héritage
CDateTimeCtrl
Spécifications
En-tête : afxdtctl.h
CDateTimeCtrl::CDateTimeCtrl
Construit un objet CDateTimeCtrl
.
CDateTimeCtrl();
CDateTimeCtrl::CloseMonthCal
Ferme le contrôle de sélecteur de date et d’heure actuel.
void CloseMonthCal() const;
Notes
Cette méthode envoie le DTM_CLOSEMONTHCAL
message, qui est décrit dans le Kit de développement logiciel (SDK) Windows.
Exemple
Le premier exemple de code définit la variable, m_dateTimeCtrl
utilisée pour accéder par programmation au contrôle du sélecteur de date et d’heure. Cette variable est utilisée dans l'exemple suivant.
// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
L’exemple de code suivant ferme le calendrier déroulant du contrôle de sélecteur de date et d’heure actuel.
void CCDateTimeCtrl_s1Dlg::OnXClosemonthcal()
{
// Close the month calendar control dropdown.
m_dateTimeCtrl.CloseMonthCal();
}
CDateTimeCtrl::Create
Crée le contrôle sélecteur de date et d’heure et l’attache à l’objet CDateTimeCtrl
.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Paramètres
dwStyle
Spécifie la combinaison des styles de contrôle date/heure. Pour plus d’informations sur les styles de sélecteur de date et d’heure, consultez les styles de contrôle du sélecteur de date et d’heure dans le Kit de développement logiciel (SDK) Windows.
rect
Référence à une RECT
structure, qui est la position et la taille du contrôle du sélecteur de date et d’heure.
pParentWnd
Pointeur vers un CWnd
objet qui est la fenêtre parente du contrôle sélecteur de date et d’heure. Il ne doit pas être NULL
.
nID
Spécifie l’ID de contrôle du sélecteur de date et d’heure.
Valeur de retour
Différent de zéro si la création a réussi ; sinon 0.
Notes
Pour créer un contrôle sélecteur de date et d’heure
Appelez
CDateTimeCtrl
pour construire unCDateTimeCtrl
objet.Appelez cette fonction membre, qui crée le contrôle sélecteur de date et d’heure Windows et l’attache à l’objet
CDateTimeCtrl
.
Lorsque vous appelez Create
, les contrôles courants sont initialisés.
Exemple
// 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
Récupère des informations sur le contrôle de sélecteur de date et d’heure actuel.
BOOL GetDateTimePickerInfo(LPDATETIMEPICKERINFO pDateTimePickerInfo) const;
Paramètres
pDateTimePickerInfo
[out] Pointeur vers une DATETIMEPICKERINFO
structure qui reçoit une description du contrôle de sélecteur de date et d’heure actuel. L’appelant est responsable de l’allocation de cette structure. Toutefois, cette méthode initialise le cbSize
membre de la structure.
Valeur de retour
TRUE
si cette méthode réussit ; sinon, FALSE
.
Notes
Cette méthode envoie le DTM_GETDATETIMEPICKERINFO
message, qui est décrit dans le Kit de développement logiciel (SDK) Windows.
Exemple
Le premier exemple de code définit la variable, m_dateTimeCtrl
utilisée pour accéder par programmation au contrôle du sélecteur de date et d’heure. Cette variable est utilisée dans l'exemple suivant.
// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
L’exemple de code suivant indique s’il récupère correctement des informations sur le contrôle de sélecteur de date et d’heure actuel.
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
Récupère la couleur d’une partie donnée du calendrier du mois dans le contrôle du sélecteur de date et d’heure.
COLORREF GetMonthCalColor(int iColor) const;
Paramètres
iColor
Valeur int
spécifiant la zone de couleur du calendrier mensuel à récupérer. Pour obtenir la liste des valeurs, consultez le iColor
paramètre pour SetMonthCalColor
.
Valeur de retour
Valeur COLORREF
qui représente le paramètre de couleur de la partie spécifiée du contrôle calendrier mois en cas de réussite. La fonction retourne -1 en cas d’échec.
Notes
Cette fonction membre implémente le comportement du message DTM_GETMCCOLOR
Win32, comme décrit dans le SDK Windows.
Exemple
// 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
Récupère l’objet CMonthCalCtrl
associé au contrôle sélecteur de date et d’heure.
CMonthCalCtrl* GetMonthCalCtrl() const;
Valeur de retour
Pointeur vers un CMonthCalCtrl
objet, ou NULL
en cas d’échec ou si la fenêtre n’est pas visible.
Notes
Les contrôles du sélecteur de date et d’heure créent un contrôle calendrier de mois enfant lorsque l’utilisateur sélectionne la flèche déroulante. Lorsque l’objet CMonthCalCtrl
n’est plus nécessaire, il est détruit. Par conséquent, votre application ne doit pas s’appuyer sur le stockage de l’objet représentant le calendrier mensuel enfant du contrôle de date et heure.
Exemple
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
Obtient la police actuellement utilisée par le contrôle calendrier du sélecteur de date et d’heure.
CFont* GetMonthCalFont() const;
Valeur de retour
Pointeur vers un CFont
objet ou NULL
en cas d’échec.
Notes
L’objet CFont
pointé par la valeur de retour est un objet temporaire et est détruit pendant le prochain temps de traitement inactif.
CDateTimeCtrl::GetMonthCalStyle
Obtient le style du contrôle calendrier de mois déroulant associé au contrôle de sélecteur de date et d’heure actuel.
DWORD GetMonthCalStyle() const;
Valeur de retour
Style du contrôle calendrier du mois déroulant, qui est une combinaison de bits (OR) des styles de contrôle du sélecteur de date et d’heure. Pour plus d’informations, consultez Styles de contrôle calendrier mois.
Notes
Cette méthode envoie le DTM_GETMCSTYLE
message, qui est décrit dans le Kit de développement logiciel (SDK) Windows.
CDateTimeCtrl::GetRange
Récupère les heures système minimales et maximales actuelles pour un contrôle de sélecteur de date et d’heure.
DWORD GetRange(
COleDateTime* pMinRange,
COleDateTime* pMaxRange) const;
DWORD GetRange(
CTime* pMinRange,
CTime* pMaxRange) const;
Paramètres
pMinRange
Pointeur vers un COleDateTime
objet ou un CTime
objet contenant la durée la plus ancienne autorisée dans l’objet CDateTimeCtrl
.
pMaxRange
Pointeur vers un COleDateTime
objet ou un CTime
objet contenant la dernière heure autorisée dans l’objet CDateTimeCtrl
.
Valeur de retour
Valeur DWORD
contenant des indicateurs qui indiquent quelles plages sont définies. If
return value & GDTR_MAX
== 0
puis le deuxième paramètre est valide. De même, si
return value & GDTR_MIN
== 0
puis le premier paramètre est valide.
Notes
Cette fonction membre implémente le comportement du message DTM_GETRANGE
Win32, comme décrit dans le SDK Windows. Dans l’implémentation de MFC, vous pouvez spécifier l’une ou CTime
l’autre COleDateTime
utilisation.
Exemple
// 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
Récupère l’heure actuellement sélectionnée à partir d’un contrôle de sélecteur de date et d’heure et la place dans une structure spécifiée SYSTEMTIME
.
BOOL GetTime(COleDateTime& timeDest) const;
DWORD GetTime(CTime& timeDest) const;
DWORD GetTime(LPSYSTEMTIME pTimeDest) const;
Paramètres
timeDest
Dans la première version, référence à un COleDateTime
objet qui recevra les informations de temps système. Dans la deuxième version, référence à un CTime
objet qui recevra les informations de temps système.
pTimeDest
Pointeur vers la SYSTEMTIME
structure pour recevoir les informations de temps système. Ne doit pas être NULL
.
Valeur de retour
Dans la première version, non nulle si l’heure est correctement écrite dans l’objet COleDateTime
; sinon, 0. Dans les deuxième et troisième versions, une DWORD
valeur égale au dwFlag
membre défini dans la NMDATETIMECHANGE
structure. Pour plus d’informations, consultez la section Remarques ci-dessous.
Notes
Cette fonction membre implémente le comportement du message DTM_GETSYSTEMTIME
Win32, comme décrit dans le SDK Windows. Dans l’implémentation MFC de GetTime
, vous pouvez utiliser COleDateTime
ou CTime
classes, ou utiliser une SYSTEMTIME
structure, pour stocker les informations de temps.
La valeur DWORD
de retour dans les deuxième et troisième versions, ci-dessus, indique si le contrôle du sélecteur de date et d’heure est défini sur l’état « aucune date », comme indiqué dans le membre dwFlags
de la NMDATETIMECHANGE
structure. Si la valeur retournée est égale GDT_NONE
, le contrôle est défini sur « aucune date » et utilise le DTS_SHOWNONE
style. Si la valeur retournée est égale GDT_VALID
, l’heure système est correctement stockée à l’emplacement de destination.
Exemple
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
Retourne la taille idéale du contrôle sélecteur de date et d’heure requis pour afficher la date ou l’heure actuelles.
BOOL GetIdealSize(LPSIZE psize) const;
Paramètres
psize
[out] Pointeur vers une SIZE
structure qui contient la taille idéale pour le contrôle.
Valeur de retour
La valeur de retour est toujours TRUE
.
Notes
Cette méthode envoie le DTM_GETIDEALSIZE
message, qui est décrit dans le Kit de développement logiciel (SDK) Windows.
Exemple
Le premier exemple de code définit la variable, m_dateTimeCtrl
utilisée pour accéder par programmation au contrôle du sélecteur de date et d’heure. Cette variable est utilisée dans l'exemple suivant.
// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
L’exemple de code suivant récupère la taille idéale pour afficher le contrôle du sélecteur de date et d’heure.
// 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
Définit l’affichage d’un contrôle sélecteur de date et d’heure conformément à une chaîne de format donnée.
BOOL SetFormat(LPCTSTR pstrFormat);
Paramètres
pstrFormat
Pointeur vers une chaîne de format sans fin qui définit l’affichage souhaité. La définition de ce paramètre pour NULL
réinitialiser le contrôle à la chaîne de format par défaut pour le style actuel.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Remarque
L’entrée utilisateur ne détermine pas la réussite ou l’échec de cet appel.
Notes
Cette fonction membre implémente le comportement du message DTM_SETFORMAT
Win32, comme décrit dans le SDK Windows.
Exemple
// 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
Définit la couleur d’une partie donnée du calendrier mensuel dans un contrôle de sélecteur de date et d’heure.
COLORREF SetMonthCalColor(
int iColor,
COLORREF ref);
Paramètres
iColor
int
valeur spécifiant la zone du contrôle calendrier mensuel à définir. Cette valeur peut être l’une des suivantes.
Valeur | Signification |
---|---|
MCSC_BACKGROUND |
Définissez la couleur d’arrière-plan affichée entre les mois. |
MCSC_MONTHBK |
Définissez la couleur d’arrière-plan affichée dans un mois. |
MCSC_TEXT |
Définissez la couleur utilisée pour afficher le texte dans un mois. |
MCSC_TITLEBK |
Définissez la couleur d’arrière-plan affichée dans le titre du calendrier. |
MCSC_TITLETEXT |
Définissez la couleur utilisée pour afficher le texte dans le titre du calendrier. |
MCSC_TRAILINGTEXT |
Définissez la couleur utilisée pour afficher l’en-tête et le texte de fin du jour. Les jours d’en-tête et de fin sont les jours précédents et suivants qui apparaissent dans le calendrier actuel. |
ref
Valeur COLORREF
représentant la couleur qui sera définie pour la zone spécifiée du calendrier du mois.
Valeur de retour
Valeur COLORREF
qui représente le paramètre de couleur précédent pour la partie spécifiée du contrôle calendrier mois en cas de réussite. Sinon, le message retourne -1.
Notes
Cette fonction membre implémente le comportement du message DTM_SETMCCOLOR
Win32, comme décrit dans le SDK Windows.
Exemple
Consultez l’exemple de CDateTimeCtrl ::GetMonthCalColor.
CDateTimeCtrl::SetMonthCalFont
Définit la police que le contrôle calendrier du sélecteur de date et d’heure utilise le contrôle calendrier du mois enfant.
void SetMonthCalFont(
HFONT hFont,
BOOL bRedraw = TRUE);
Paramètres
hFont
Handle vers la police qui sera définie.
bRedraw
Spécifie si le contrôle doit être redessiné immédiatement lors de la définition de la police. La définition de ce paramètre entraîne TRUE
le redessinage du contrôle lui-même.
Notes
Cette fonction membre implémente le comportement du message DTM_SETMCFONT
Win32, comme décrit dans le SDK Windows.
Exemple
// 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);
}
Remarque
Si vous utilisez ce code, vous souhaiterez rendre membre de votre CDialog
classe dérivée appelée m_MonthFont de type CFont
.
CDateTimeCtrl::SetMonthCalStyle
Définit le style du contrôle calendrier de mois déroulant associé au contrôle du sélecteur de date et d’heure actuel.
DWORD SetMonthCalStyle(DWORD dwStyle);
Paramètres
dwStyle
[in] Un nouveau style de contrôle calendrier mois, qui est une combinaison au niveau du bit (OR) des styles de contrôle calendrier mois. Pour plus d’informations, consultez Styles de contrôle calendrier mois.
Valeur de retour
Style précédent du contrôle calendrier du mois déroulant.
Notes
Cette méthode envoie le DTM_SETMCSTYLE
message, qui est décrit dans le Kit de développement logiciel (SDK) Windows.
Exemple
Le premier exemple de code définit la variable, m_dateTimeCtrl
utilisée pour accéder par programmation au contrôle du sélecteur de date et d’heure. Cette variable est utilisée dans l'exemple suivant.
// Variable to access date-time control.
CDateTimeCtrl m_dateTimeCtrl;
// Variable to access the splitbutton control
CSplitButton m_splitbutton;
L’exemple de code suivant définit le contrôle sélecteur de date et d’heure pour afficher les numéros de semaine, les noms abrégés des jours de la semaine et aucun indicateur d’aujourd’hui.
// 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
Définit les heures système minimales et maximales autorisées pour un contrôle de sélecteur de date et d’heure.
BOOL SetRange(
const COleDateTime* pMinRange,
const COleDateTime* pMaxRange);
BOOL SetRange(
const CTime* pMinRange,
const CTime* pMaxRange);
Paramètres
pMinRange
Pointeur vers un COleDateTime
objet ou un CTime
objet contenant la durée la plus ancienne autorisée dans l’objet CDateTimeCtrl
.
pMaxRange
Pointeur vers un COleDateTime
objet ou un CTime
objet contenant la dernière heure autorisée dans l’objet CDateTimeCtrl
.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
Cette fonction membre implémente le comportement du message DTM_SETRANGE
Win32, comme décrit dans le SDK Windows. Dans l’implémentation de MFC, vous pouvez spécifier l’une ou CTime
l’autre COleDateTime
utilisation. Si l’objet COleDateTime
a un NULL
état, la plage est supprimée. Si le CTime
pointeur ou le COleDateTime
pointeur est NULL
, la plage est supprimée.
Exemple
Consultez l’exemple pour CDateTimeCtrl::GetRange
.
CDateTimeCtrl::SetTime
Définit l’heure dans un contrôle sélecteur de date et d’heure.
BOOL SetTime(const COleDateTime& timeNew);
BOOL SetTime(const CTime* pTimeNew);
BOOL SetTime(LPSYSTEMTIME pTimeNew = NULL);
Paramètres
timeNew
Référence à un COleDateTime
objet contenant l’objet sur lequel le contrôle sera défini.
pTimeNew
Dans la deuxième version ci-dessus, pointeur vers un CTime
objet contenant l’heure à laquelle le contrôle sera défini. Dans la troisième version ci-dessus, pointeur vers une SYSTEMTIME
structure contenant l’heure à laquelle le contrôle sera défini.
Valeur de retour
Valeur différente de zéro cas de réussite ; sinon, 0.
Notes
Cette fonction membre implémente le comportement du message DTM_SETSYSTEMTIME
Win32, comme décrit dans le SDK Windows. Dans l’implémentation MFC de SetTime
, vous pouvez utiliser les classes ou CTime
les COleDateTime
classes, ou vous pouvez utiliser une SYSTEMTIME
structure, pour définir les informations de temps.
Exemple
// 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));
Voir aussi
Exemple MFC CMNCTRL1
CWnd
Classe
Graphique hiérarchique
CMonthCalCtrl
Classe