Megosztás a következőn keresztül:


CDateTimeCtrl osztály

Megjegyzés:

A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.

A dátum- és időválasztó vezérlő funkcióinak beágyazása.

Szemantika

class CDateTimeCtrl : public CWnd

Tagok

Nyilvános konstruktorok

Név Description
CDateTimeCtrl::CDateTimeCtrl Egy CDateTimeCtrl objektumot hoz létre.

Nyilvános metódusok

Név Description
CDateTimeCtrl::CloseMonthCal Bezárja az aktuális dátum- és időválasztó vezérlőelemet.
CDateTimeCtrl::Create Létrehozza a dátum- és időválasztó vezérlőt, és csatolja az CDateTimeCtrl objektumhoz.
CDateTimeCtrl::GetDateTimePickerInfo Adatokat kér le az aktuális dátum- és időválasztó vezérlőelemről.
CDateTimeCtrl::GetIdealSize Az aktuális dátum vagy idő megjelenítéséhez szükséges dátum- és időválasztó vezérlőelem ideális méretét adja vissza.
CDateTimeCtrl::GetMonthCalColor A hónapnaptár adott részének színét kéri le a dátum- és időválasztó vezérlőelemen belül.
CDateTimeCtrl::GetMonthCalCtrl Lekéri a CMonthCalCtrl dátum- és időválasztó vezérlőelemhez társított objektumot.
CDateTimeCtrl::GetMonthCalFont Lekéri a dátum- és időválasztó vezérlőelem gyermekhónaptár-vezérlője által jelenleg használt betűtípust.
CDateTimeCtrl::GetMonthCalStyle Lekéri az aktuális dátum- és időválasztó vezérlőelem stílusát.
CDateTimeCtrl::GetRange Lekéri a dátum- és időválasztó vezérlőelemek aktuális minimális és maximális rendszerideit.
CDateTimeCtrl::GetTime Lekéri a jelenleg kijelölt időt egy dátum- és időválasztó vezérlőelemből, és egy adott SYSTEMTIME struktúrába helyezi.
CDateTimeCtrl::SetFormat Beállítja egy dátum- és időválasztó vezérlőelem megjelenítését egy adott formátumsztringnek megfelelően.
CDateTimeCtrl::SetMonthCalColor Beállítja a hónapnaptár adott részének színét egy dátum- és időválasztó vezérlőelemen belül.
CDateTimeCtrl::SetMonthCalFont Beállítja azt a betűtípust, amelyet a dátum- és időválasztó vezérlő gyermekhónaptár-vezérlője használni fog.
CDateTimeCtrl::SetMonthCalStyle Beállítja az aktuális dátum- és időválasztó vezérlőelem stílusát.
CDateTimeCtrl::SetRange A dátum- és időválasztó vezérlőelem minimális és maximális rendszeridejének beállítása.
CDateTimeCtrl::SetTime Dátum- és időválasztó vezérlőelemben beállítja az időt.

Megjegyzések

A dátum- és időválasztó vezérlő (DTP-vezérlő) egyszerű felületet biztosít a dátum- és időadatok felhasználóval való cseréjéhez. Ez az interfész mezőket tartalmaz, amelyek mindegyike megjeleníti a vezérlőben tárolt dátum- és időadatok egy részét. A felhasználó módosíthatja a vezérlőelemben tárolt információkat a sztring tartalmának módosításával egy adott mezőben. A felhasználó az egérrel vagy a billentyűzettel válthat mezőről mezőre.

A dátum- és időválasztó vezérlőelem testreszabásához különböző stílusokat alkalmazhat az objektumra a létrehozáskor. A Dátum- és időválasztó vezérlőstílusai a Windows SDK-ban a dátum- és időválasztó vezérlőelemre jellemző stílusokkal kapcsolatos további információkért. A DTP-vezérlő megjelenítési formátumát formátumstílusok használatával állíthatja be. Ezeket a formátumstílusokat a Windows SDK Dátum- és időválasztó vezérlőstílusok című témakör "Stílusok formázása" című témakörében ismertetjük.

A dátum- és időválasztó vezérlő értesítéseket és visszahívásokat is használ, amelyeket a Használat CDateTimeCtrlszakaszban ismertetünk.

Öröklési hierarchia

CObject

CCmdTarget

CWnd

CDateTimeCtrl

Requirements

Fejléc:afxdtctl.h

CDateTimeCtrl::CDateTimeCtrl

Egy CDateTimeCtrl objektumot hoz létre.

CDateTimeCtrl();

CDateTimeCtrl::CloseMonthCal

Bezárja az aktuális dátum- és időválasztó vezérlőelemet.

void CloseMonthCal() const;

Megjegyzések

Ez a metódus elküldi a DTM_CLOSEMONTHCAL Windows SDK-ban leírt üzenetet.

Example

Az első példakód határozza meg azt a változót, m_dateTimeCtrlamely a dátum- és időválasztó vezérlőelem programozott elérésére szolgál. Ezt a változót a következő példában használjuk.

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

A következő példakód bezárja az aktuális dátum- és időválasztó vezérlőelem legördülő naptárát.

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

CDateTimeCtrl::Create

Létrehozza a dátum- és időválasztó vezérlőt, és csatolja az CDateTimeCtrl objektumhoz.

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

Paraméterek

dwStyle
A dátumidő-vezérlési stílusok kombinációját adja meg. A Dátum- és időválasztó vezérlőstílusok a Windows SDK-ban további információt a dátum- és időválasztó stílusokról.

rect
Egy szerkezetre RECT mutató hivatkozás, amely a dátum- és időválasztó vezérlőelem pozíciója és mérete.

pParentWnd
Mutató egy CWnd objektumra, amely a dátum- és időválasztó vezérlőelem szülőablaka. Nem lehet NULL.

nID
Megadja a dátum- és időválasztó vezérlő vezérlőazonosítóját.

Visszaadott érték

Nonzero, ha a létrehozás sikeres volt; egyéb esetben 0.

Megjegyzések

Dátum- és időválasztó vezérlőelem létrehozása
  1. Hívás CDateTimeCtrl objektum létrehozásához CDateTimeCtrl .

  2. Hívja meg ezt a tagfüggvényt, amely létrehozza a Windows dátum- és időválasztó vezérlőt, és csatolja az CDateTimeCtrl objektumhoz.

Híváskor Createa rendszer inicializálja a gyakori vezérlőket.

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

Adatokat kér le az aktuális dátum- és időválasztó vezérlőelemről.

BOOL GetDateTimePickerInfo(LPDATETIMEPICKERINFO pDateTimePickerInfo) const;

Paraméterek

pDateTimePickerInfo
[kifelé] Az aktuális dátum- és időválasztó vezérlőelem leírását kapó struktúra mutatója DATETIMEPICKERINFO . A hívó felelős a struktúra kiosztásáért. Ez a módszer azonban inicializálja a cbSize struktúra tagját.

Visszaadott érték

TRUEha ez a módszer sikeres; egyéb esetben. FALSE

Megjegyzések

Ez a metódus elküldi a DTM_GETDATETIMEPICKERINFO Windows SDK-ban leírt üzenetet.

Example

Az első példakód határozza meg azt a változót, m_dateTimeCtrlamely a dátum- és időválasztó vezérlőelem programozott elérésére szolgál. Ezt a változót a következő példában használjuk.

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

A következő példakód azt jelzi, hogy sikeresen lekéri-e az aktuális dátum- és időválasztó vezérlőelem adatait.

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

A hónapnaptár adott részének színét kéri le a dátum- és időválasztó vezérlőelemen belül.

COLORREF GetMonthCalColor(int iColor) const;

Paraméterek

iColor
A int havi naptár beolvasandó színterületét meghatározó érték. Az értékek listáját a iColor következő paraméterben SetMonthCalColortalálja: .

Visszaadott érték

Egy COLORREF érték, amely a hónap megadott részének színbeállítását jelöli, ha sikeres. Ha a függvény sikertelen, -1 ad vissza.

Megjegyzések

Ez a tagfüggvény implementálja a Win32-üzenet DTM_GETMCCOLORviselkedését a Windows SDK-ban leírtak szerint.

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

Lekéri a CMonthCalCtrl dátum- és időválasztó vezérlőelemhez társított objektumot.

CMonthCalCtrl* GetMonthCalCtrl() const;

Visszaadott érték

Mutató egy CMonthCalCtrl objektumra, vagy NULL ha nem sikerül, vagy ha az ablak nem látható.

Megjegyzések

A dátum- és időválasztó vezérlők létrehoznak egy gyermekhónaptár-vezérlőt, amikor a felhasználó kiválasztja a legördülő nyilat. Ha az CMonthCalCtrl objektumra már nincs szükség, az megsemmisül, így az alkalmazásnak nem szabad arra támaszkodnia, hogy az objektumot a dátumválasztó vezérlő gyermekhónapnaptárának megfelelően tárolja.

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

Lekéri a dátum- és időválasztó vezérlőelem havi naptár vezérlőeleme által jelenleg használt betűtípust.

CFont* GetMonthCalFont() const;

Visszaadott érték

Mutató egy CFont objektumra, vagy NULL ha nem sikerül.

Megjegyzések

A CFont visszatérési érték által mutatott objektum ideiglenes objektum, és a következő tétlen feldolgozási idő alatt megsemmisül.

CDateTimeCtrl::GetMonthCalStyle

Lekéri az aktuális dátum- és időválasztó vezérlőelemhez társított legördülő havi naptár vezérlőelem stílusát.

DWORD GetMonthCalStyle() const;

Visszaadott érték

A legördülő havi naptár vezérlőelem stílusa, amely a dátum- és időválasztó vezérlőelemek bitenkénti (VAGY) kombinációja. További információ: Havi naptár vezérlőstílusok.

Megjegyzések

Ez a metódus elküldi a DTM_GETMCSTYLE Windows SDK-ban leírt üzenetet.

CDateTimeCtrl::GetRange

Lekéri a dátum- és időválasztó vezérlőelemek aktuális minimális és maximális rendszerideit.

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

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

Paraméterek

pMinRange
Mutató egy COleDateTime objektumra vagy egy CTime objektumra, amely az objektumban megengedett legkorábbi időpontot CDateTimeCtrl tartalmazza.

pMaxRange
Mutató egy COleDateTime objektumra vagy egy CTime objektumra, amely az objektumban CDateTimeCtrl megengedett legújabb időt tartalmazza.

Visszaadott érték

Olyan DWORD érték, amely jelzőket tartalmaz, amelyek jelzik, hogy mely tartományok vannak beállítva. Ha

return value & GDTR_MAX == 0

akkor a második paraméter érvényes. Hasonlóképpen, ha

return value & GDTR_MIN == 0

akkor az első paraméter érvényes.

Megjegyzések

Ez a tagfüggvény implementálja a Win32-üzenet DTM_GETRANGEviselkedését a Windows SDK-ban leírtak szerint. Az MFC implementációjában megadhatja a használatot vagy CTime a COleDateTime használatot.

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

Lekéri a jelenleg kijelölt időt egy dátum- és időválasztó vezérlőelemből, és egy adott SYSTEMTIME struktúrába helyezi.

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

Paraméterek

timeDest
Az első verzióban egy olyan objektumra mutató COleDateTime hivatkozás, amely megkapja a rendszer időadatait. A második verzióban egy olyan objektumra mutató CTime hivatkozás, amely megkapja a rendszer időadatait.

pTimeDest
A rendszer időadatainak fogadásához mutató mutató SYSTEMTIME a struktúrára. Nem lehet NULL.

Visszaadott érték

Az első verzióban a nonzero, ha az idő sikeresen meg van írva az COleDateTime objektumra, egyébként 0. A második és a harmadik verzióban a DWORD struktúrában NMDATETIMECHANGE beállított tag értékével megegyező dwFlag érték. További információért tekintse meg az alábbi Megjegyzések szakaszt.

Megjegyzések

Ez a tagfüggvény implementálja a Win32-üzenet DTM_GETSYSTEMTIMEviselkedését a Windows SDK-ban leírtak szerint. Az MFC implementációjában GetTimeCOleDateTime használhatja az CTime osztályokat, vagy használhat egy struktúrát SYSTEMTIME az időadatok tárolásához.

A fenti második és harmadik verzió visszatérési értéke DWORD azt jelzi, hogy a dátum- és időválasztó vezérlőelem "nincs dátum" állapotra van-e állítva a struktúratagban NMDATETIMECHANGEdwFlagsleírtak szerint. Ha a visszaadott érték egyenlő GDT_NONE, a vezérlőelem "nincs dátum" állapotra van állítva, és a stílust DTS_SHOWNONE használja. Ha a visszaadott érték egyenlő GDT_VALID, a rendszer a rendszeridőt sikeresen tárolja a célhelyen.

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

Az aktuális dátum vagy idő megjelenítéséhez szükséges dátum- és időválasztó vezérlőelem ideális méretét adja vissza.

BOOL GetIdealSize(LPSIZE psize) const;

Paraméterek

psize
[kifelé] Mutasson egy SIZE olyan struktúrára, amely a vezérlő ideális méretét tartalmazza.

Visszaadott érték

A visszatérési érték mindig TRUE.

Megjegyzések

Ez a metódus elküldi a DTM_GETIDEALSIZE Windows SDK-ban leírt üzenetet.

Example

Az első példakód határozza meg azt a változót, m_dateTimeCtrlamely a dátum- és időválasztó vezérlőelem programozott elérésére szolgál. Ezt a változót a következő példában használjuk.

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

A következő példakód lekéri az ideális méretet a dátum- és időválasztó vezérlőelem megjelenítéséhez.

// 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

Beállítja egy dátum- és időválasztó vezérlőelem megjelenítését egy adott formátumsztringnek megfelelően.

BOOL SetFormat(LPCTSTR pstrFormat);

Paraméterek

pstrFormat
A kívánt megjelenítést meghatározó, nulla végződésű formátumsztringre mutató mutató. Ha ezt a paramétert úgy állítja be, hogy NULL visszaállítsa a vezérlőt az aktuális stílus alapértelmezett formátumsztringjére.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzés:

A felhasználói bemenet nem határozza meg a hívás sikerességét vagy sikertelenségét.

Megjegyzések

Ez a tagfüggvény implementálja a Win32-üzenet DTM_SETFORMATviselkedését a Windows SDK-ban leírtak szerint.

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

Beállítja a hónapnaptár adott részének színét egy dátum- és időválasztó vezérlőelemen belül.

COLORREF SetMonthCalColor(
    int iColor,
    COLORREF ref);

Paraméterek

iColor
int érték, amely megadja, hogy a hónap naptárvezérlőjének mely területe legyen beállítva. Ez az érték az alábbiak egyike lehet.

Érték Meaning
MCSC_BACKGROUND Adja meg a hónapok közötti háttérszínt.
MCSC_MONTHBK Állítsa be a háttérszínt egy hónapon belül.
MCSC_TEXT Állítsa be a szöveg egy hónapon belüli megjelenítéséhez használt színt.
MCSC_TITLEBK Állítsa be a naptár címében megjelenő háttérszínt.
MCSC_TITLETEXT Állítsa be a naptár címében lévő szöveg megjelenítéséhez használt színt.
MCSC_TRAILINGTEXT Állítsa be az élőfej és a záró nap szövegének megjelenítéséhez használt színt. A fejléc és a záró napok az aktuális naptárban megjelenő előző és következő hónapok napjai.

ref
A COLORREF hónapnaptár megadott területéhez beállított színt jelképező érték.

Visszaadott érték

Egy COLORREF érték, amely a hónap megadott részének előző színbeállítását jelöli, ha sikeres. Ellenkező esetben az üzenet -1 értéket ad vissza.

Megjegyzések

Ez a tagfüggvény implementálja a Win32-üzenet DTM_SETMCCOLORviselkedését a Windows SDK-ban leírtak szerint.

Example

Lásd a CDateTimeCtrl::GetMonthCalColor példát.

CDateTimeCtrl::SetMonthCalFont

Beállítja azt a betűtípust, amelyet a dátum- és időválasztó vezérlő gyermekhónaptár-vezérlője használni fog.

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

Paraméterek

hFont
A beállítandó betűtípus kezelése.

bRedraw
Megadja, hogy a vezérlőelemet azonnal újra kell-e állítani a betűtípus beállításakor. Ha ezt a paramétert úgy állítja be, hogy TRUE a vezérlő újrarajzolva lesz.

Megjegyzések

Ez a tagfüggvény implementálja a Win32-üzenet DTM_SETMCFONTviselkedését a Windows SDK-ban leírtak szerint.

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);
}

Megjegyzés:

Ha ezt a kódot használja, a m_MonthFont típusú CFontosztály tagjának CDialogkell lenni.

CDateTimeCtrl::SetMonthCalStyle

Beállítja az aktuális dátum- és időválasztó vezérlőelemhez társított legördülő havi naptár vezérlőelem stílusát.

DWORD SetMonthCalStyle(DWORD dwStyle);

Paraméterek

dwStyle
[in] Új havi naptár vezérlőelem-stílus, amely a havi naptár vezérlőelem-stílusok bitenkénti (VAGY) kombinációja. További információ: Havi naptár vezérlőstílusok.

Visszaadott érték

A legördülő havi naptár vezérlőelem előző stílusa.

Megjegyzések

Ez a metódus elküldi a DTM_SETMCSTYLE Windows SDK-ban leírt üzenetet.

Example

Az első példakód határozza meg azt a változót, m_dateTimeCtrlamely a dátum- és időválasztó vezérlőelem programozott elérésére szolgál. Ezt a változót a következő példában használjuk.

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

A következő példakód a dátum- és időválasztó vezérlőelemet hétszámok, a hét napjainak rövidített nevei és a mai dátumjelek megjelenítésére állítja be.

// 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

A dátum- és időválasztó vezérlőelem minimális és maximális rendszeridejének beállítása.

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

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

Paraméterek

pMinRange
Mutató egy COleDateTime objektumra vagy egy CTime objektumra, amely az objektumban megengedett legkorábbi időpontot CDateTimeCtrl tartalmazza.

pMaxRange
Mutató egy COleDateTime objektumra vagy egy CTime objektumra, amely az objektumban CDateTimeCtrl megengedett legújabb időt tartalmazza.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Ez a tagfüggvény implementálja a Win32-üzenet DTM_SETRANGEviselkedését a Windows SDK-ban leírtak szerint. Az MFC implementációjában megadhatja a használatot vagy CTime a COleDateTime használatot. Ha az COleDateTime objektum állapota van NULL , a tartomány el lesz távolítva. Ha a CTime mutató vagy az COleDateTime egérmutató van NULL, a tartomány el lesz távolítva.

Example

Lásd a példát a CDateTimeCtrl::GetRange.

CDateTimeCtrl::SetTime

Dátum- és időválasztó vezérlőelemben beállítja az időt.

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

Paraméterek

timeNew
Hivatkozás egy COleDateTime objektumra, amely tartalmazza a vezérlő beállítását.

pTimeNew
A fenti második verzióban egy mutató egy CTime objektumra, amely tartalmazza a vezérlőelem beállításának idejét. A fenti harmadik verzióban egy olyan struktúrára SYSTEMTIME mutató mutató, amely tartalmazza a vezérlőelem beállításának idejét.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Ez a tagfüggvény implementálja a Win32-üzenet DTM_SETSYSTEMTIMEviselkedését a Windows SDK-ban leírtak szerint. A MFC implementációjában SetTimeaz órákat vagy CTime osztályokat COleDateTime használhatja, vagy egy struktúrát SYSTEMTIME is használhat az időadatok beállításához.

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));

Lásd még

MFC-minta CMNCTRL1
CWnd osztály
hierarchiadiagram
CMonthCalCtrl osztály