Sdílet prostřednictvím


CDateTimeCtrl Třída

Zapouzdřuje funkce ovládacího prvku pro výběr data a času.

Syntaxe

class CDateTimeCtrl : public CWnd

Členové

Veřejné konstruktory

Název Popis
CDateTimeCtrl::CDateTimeCtrl CDateTimeCtrl Vytvoří objekt.

Veřejné metody

Název Popis
CDateTimeCtrl::CloseMonthCal Zavře aktuální ovládací prvek pro výběr data a času.
CDateTimeCtrl::Create Vytvoří ovládací prvek pro výběr data a času a připojí ho k objektu CDateTimeCtrl .
CDateTimeCtrl::GetDateTimePickerInfo Načte informace o aktuálním ovládacím prvku pro výběr data a času.
CDateTimeCtrl::GetIdealSize Vrátí ideální velikost ovládacího prvku pro výběr data a času, který je nutný k zobrazení aktuálního data nebo času.
CDateTimeCtrl::GetMonthCalColor Načte barvu pro danou část kalendáře měsíce v ovládacím prvku pro výběr data a času.
CDateTimeCtrl::GetMonthCalCtrl Načte objekt přidružený k ovládacímu CMonthCalCtrl prvku pro výběr data a času.
CDateTimeCtrl::GetMonthCalFont Načte písmo, které aktuálně používá ovládací prvek pro výběr data a času ovládacího prvku podřízený kalendář měsíce.
CDateTimeCtrl::GetMonthCalStyle Získá styl aktuálního ovládacího prvku pro výběr data a času.
CDateTimeCtrl::GetRange Načte aktuální minimální a maximální povolené systémové časy pro ovládací prvek pro výběr data a času.
CDateTimeCtrl::GetTime Načte aktuálně vybraný čas z ovládacího prvku pro výběr data a času a umístí ho do zadané SYSTEMTIME struktury.
CDateTimeCtrl::SetFormat Nastaví zobrazení ovládacího prvku pro výběr data a času v souladu s daným formátovacím řetězcem.
CDateTimeCtrl::SetMonthCalColor Nastaví barvu pro danou část měsíčního kalendáře v ovládacím prvku pro výběr data a času.
CDateTimeCtrl::SetMonthCalFont Nastaví písmo, které bude ovládací prvek pro výběr data a času používat ovládací prvek podřízený kalendář měsíce.
CDateTimeCtrl::SetMonthCalStyle Nastaví styl aktuálního ovládacího prvku pro výběr data a času.
CDateTimeCtrl::SetRange Nastaví minimální a maximální povolený systémový čas pro ovládací prvek pro výběr data a času.
CDateTimeCtrl::SetTime Nastaví čas v ovládacím prvku pro výběr data a času.

Poznámky

Ovládací prvek pro výběr data a času (ovládací prvek DTP) poskytuje jednoduché rozhraní pro výměnu informací o datu a čase s uživatelem. Toto rozhraní obsahuje pole, z nichž každá zobrazuje část informací o datu a čase uložených v ovládacím prvku. Uživatel může změnit informace uložené v ovládacím prvku změnou obsahu řetězce v daném poli. Uživatel se může přesunout z pole na pole pomocí myši nebo klávesnice.

Ovládací prvek pro výběr data a času můžete přizpůsobit tak, že při vytváření objektu použijete různé styly. Další informace o stylech ovládacích prvků pro výběr data a času v sadě Windows SDK najdete v tématu Styly ovládacích prvků pro výběr data a času. Formát zobrazení ovládacího prvku DTP můžete nastavit pomocí stylů formátu. Tyto styly formátu jsou popsány v části Styly formátu v tématu Sada Windows SDK datum a čas výběr stylů ovládacího prvku.

Ovládací prvek pro výběr data a času používá také oznámení a zpětná volání, které jsou popsány v části Použití CDateTimeCtrl.

Hierarchie dědičnosti

CObject

CCmdTarget

CWnd

CDateTimeCtrl

Požadavky

Záhlaví: afxdtctl.h

CDateTimeCtrl::CDateTimeCtrl

CDateTimeCtrl Vytvoří objekt.

CDateTimeCtrl();

CDateTimeCtrl::CloseMonthCal

Zavře aktuální ovládací prvek pro výběr data a času.

void CloseMonthCal() const;

Poznámky

Tato metoda odešle DTM_CLOSEMONTHCAL zprávu popsanou v sadě Windows SDK.

Příklad

První příklad kódu definuje proměnnou , m_dateTimeCtrlkterá se používá pro programový přístup k ovládacímu prvku pro výběr data a času. Tato proměnná se používá v dalším příkladu.

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

Následující příklad kódu zavře rozevírací kalendář pro aktuální ovládací prvek pro výběr data a času.

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

CDateTimeCtrl::Create

Vytvoří ovládací prvek pro výběr data a času a připojí ho k objektu CDateTimeCtrl .

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

Parametry

dwStyle
Určuje kombinaci stylů ovládacího prvku data a času. Další informace o stylech výběru data a času najdete v sadě Windows SDK.

rect
Odkaz na RECT strukturu, což je pozice a velikost ovládacího prvku pro výběr data a času.

pParentWnd
Ukazatel na CWnd objekt, který je nadřazeným oknem ovládacího prvku pro výběr data a času. Nesmí to být NULL.

nID
Určuje ID ovládacího prvku pro výběr data a času.

Návratová hodnota

Nenulové, pokud bylo vytvoření úspěšné; jinak 0.

Poznámky

Vytvoření ovládacího prvku pro výběr data a času
  1. Volání CDateTimeCtrl k vytvoření objektu CDateTimeCtrl

  2. Volání této členské funkce, která vytvoří ovládací prvek pro výběr data a času systému Windows a připojí ho k objektu CDateTimeCtrl .

Při volání Createse inicializují běžné ovládací prvky.

Příklad

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

Načte informace o aktuálním ovládacím prvku pro výběr data a času.

BOOL GetDateTimePickerInfo(LPDATETIMEPICKERINFO pDateTimePickerInfo) const;

Parametry

pDateTimePickerInfo
[ven] Ukazatel na DATETIMEPICKERINFO strukturu, která obdrží popis aktuálního ovládacího prvku pro výběr data a času. Volající zodpovídá za přidělování této struktury. Tato metoda však inicializuje cbSize člen struktury.

Návratová hodnota

TRUEpokud je tato metoda úspěšná; v opačném případě . FALSE

Poznámky

Tato metoda odešle DTM_GETDATETIMEPICKERINFO zprávu popsanou v sadě Windows SDK.

Příklad

První příklad kódu definuje proměnnou , m_dateTimeCtrlkterá se používá pro programový přístup k ovládacímu prvku pro výběr data a času. Tato proměnná se používá v dalším příkladu.

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

Další příklad kódu označuje, zda úspěšně načte informace o aktuálním ovládacím prvku pro výběr data a času.

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

Načte barvu pro danou část kalendáře měsíce v ovládacím prvku pro výběr data a času.

COLORREF GetMonthCalColor(int iColor) const;

Parametry

iColor
Hodnota int určující, která barevná oblast měsíčního kalendáře se má načíst. Seznam hodnot naleznete v parametru iColor .SetMonthCalColor

Návratová hodnota

Hodnota COLORREF , která představuje nastavení barvy pro zadanou část ovládacího prvku měsíčního kalendáře v případě úspěchu. Funkce vrátí hodnotu -1 v případě neúspěchu.

Poznámky

Tato členová funkce implementuje chování zprávy DTM_GETMCCOLORWin32, jak je popsáno v sadě Windows SDK.

Příklad

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

Načte objekt přidružený k ovládacímu CMonthCalCtrl prvku pro výběr data a času.

CMonthCalCtrl* GetMonthCalCtrl() const;

Návratová hodnota

Ukazatel na CMonthCalCtrl objekt nebo NULL v případě neúspěchu nebo v případě, že okno není viditelné.

Poznámky

Ovládací prvky pro výběr data a času vytvoří ovládací prvek kalendáře podřízeného měsíce, když uživatel vybere šipku rozevíracího seznamu. CMonthCalCtrl Pokud objekt už není potřeba, je zničený, takže aplikace nesmí spoléhat na uložení objektu představujícího podřízený měsíční kalendář ovládacího prvku pro výběr data a času.

Příklad

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

Získá písmo, které aktuálně používá ovládací prvek pro výběr data a času ovládacího prvku měsíční kalendář.

CFont* GetMonthCalFont() const;

Návratová hodnota

Ukazatel na objekt nebo NULL v případě neúspěchuCFont.

Poznámky

Objekt CFont , na který odkazuje návratová hodnota, je dočasným objektem a během další doby zpracování nečinnosti je zničen.

CDateTimeCtrl::GetMonthCalStyle

Získá styl rozevíracího kalendáře kalendáře, který je přidružen k aktuálnímu ovládacímu prvku pro výběr data a času.

DWORD GetMonthCalStyle() const;

Návratová hodnota

Styl ovládacího prvku rozevíracího kalendáře měsíce, což je bitové kombinace (OR) stylů ovládacích prvků pro výběr data a času. Další informace naleznete v části Styly ovládacího prvku Kalendář měsíce.

Poznámky

Tato metoda odešle DTM_GETMCSTYLE zprávu popsanou v sadě Windows SDK.

CDateTimeCtrl::GetRange

Načte aktuální minimální a maximální povolené systémové časy pro ovládací prvek pro výběr data a času.

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

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

Parametry

pMinRange
Ukazatel na COleDateTime objekt nebo CTime objekt obsahující nejstarší povolený čas v objektu CDateTimeCtrl .

pMaxRange
Ukazatel na COleDateTime objekt nebo CTime objekt obsahující nejnovější čas povolený v objektu CDateTimeCtrl .

Návratová hodnota

DWORD Hodnota obsahující příznaky označující, které oblasti jsou nastaveny. Pokud

return value & GDTR_MAX == 0

druhý parametr je platný. Podobně platí, že pokud

return value & GDTR_MIN == 0

první parametr je platný.

Poznámky

Tato členová funkce implementuje chování zprávy DTM_GETRANGEWin32, jak je popsáno v sadě Windows SDK. V implementaci mfc můžete zadat buď nebo COleDateTime CTime použití.

Příklad

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

Načte aktuálně vybraný čas z ovládacího prvku pro výběr data a času a umístí ho do zadané SYSTEMTIME struktury.

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

Parametry

timeDest
V první verzi odkaz na COleDateTime objekt, který obdrží informace o systémovém čase. Ve druhé verzi je odkaz na CTime objekt, který obdrží informace o systémovém čase.

pTimeDest
Ukazatel na SYSTEMTIME strukturu pro příjem informací o systémovém čase. Nesmí být NULL.

Návratová hodnota

V první verzi nenulové, pokud je čas úspěšně zapsán do objektu COleDateTime ; jinak 0. Ve druhé a třetí verzi je DWORD hodnota rovna členu dwFlag nastavenému ve struktuře NMDATETIMECHANGE . Další informace najdete v části Poznámky níže.

Poznámky

Tato členová funkce implementuje chování zprávy DTM_GETSYSTEMTIMEWin32, jak je popsáno v sadě Windows SDK. V implementaci GetTimeMFC můžete použít COleDateTime nebo CTime třídy, nebo můžete použít SYSTEMTIME strukturu k uložení informací o čase.

Návratová hodnota DWORD ve druhé a třetí verzi výše označuje, zda je ovládací prvek pro výběr data a času nastaven na stav "žádné datum", jak je uvedeno v členu NMDATETIMECHANGE dwFlagsstruktury . Pokud se vrácená hodnota rovná GDT_NONE, ovládací prvek je nastaven na stav "žádné datum" a používá DTS_SHOWNONE styl. Pokud se vrácená GDT_VALIDhodnota rovná, systémový čas se úspěšně uloží do cílového umístění.

Příklad

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

Vrátí ideální velikost ovládacího prvku pro výběr data a času, který je nutný k zobrazení aktuálního data nebo času.

BOOL GetIdealSize(LPSIZE psize) const;

Parametry

psize
[ven] Ukazatel na SIZE strukturu, která obsahuje ideální velikost ovládacího prvku.

Návratová hodnota

Návratová hodnota je vždy TRUE.

Poznámky

Tato metoda odešle DTM_GETIDEALSIZE zprávu popsanou v sadě Windows SDK.

Příklad

První příklad kódu definuje proměnnou , m_dateTimeCtrlkterá se používá pro programový přístup k ovládacímu prvku pro výběr data a času. Tato proměnná se používá v dalším příkladu.

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

Následující příklad kódu načte ideální velikost pro zobrazení ovládacího prvku pro výběr data a času.

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

Nastaví zobrazení ovládacího prvku pro výběr data a času v souladu s daným formátovacím řetězcem.

BOOL SetFormat(LPCTSTR pstrFormat);

Parametry

pstrFormat
Ukazatel na řetězec formátu s nulovým ukončením, který definuje požadované zobrazení. Nastavením tohoto parametru NULL obnovíte ovládací prvek na výchozí formátovací řetězec pro aktuální styl.

Návratová hodnota

Nenulové, pokud je úspěšné; jinak 0.

Poznámka:

Uživatelský vstup nezískute úspěšnost nebo selhání pro toto volání.

Poznámky

Tato členová funkce implementuje chování zprávy DTM_SETFORMATWin32, jak je popsáno v sadě Windows SDK.

Příklad

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

Nastaví barvu pro danou část měsíčního kalendáře v ovládacím prvku pro výběr data a času.

COLORREF SetMonthCalColor(
    int iColor,
    COLORREF ref);

Parametry

iColor
int hodnota určující, která oblast ovládacího prvku měsíčního kalendáře se má nastavit. Tato hodnota může být jedna z následujících možností.

Hodnota Význam
MCSC_BACKGROUND Nastavte barvu pozadí zobrazenou mezi měsíci.
MCSC_MONTHBK Nastavte barvu pozadí zobrazenou během měsíce.
MCSC_TEXT Nastavte barvu použitou k zobrazení textu během měsíce.
MCSC_TITLEBK Nastavte barvu pozadí zobrazenou v názvu kalendáře.
MCSC_TITLETEXT Nastavte barvu použitou k zobrazení textu v názvu kalendáře.
MCSC_TRAILINGTEXT Nastavte barvu použitou k zobrazení záhlaví a koncového textu. Záhlaví a koncové dny jsou dny z předchozích a následujících měsíců, které se zobrazují v aktuálním kalendáři.

ref
Hodnota COLORREF představující barvu, která se nastaví pro zadanou oblast kalendáře měsíce.

Návratová hodnota

Hodnota COLORREF , která představuje předchozí nastavení barvy pro zadanou část ovládacího prvku měsíčního kalendáře v případě úspěchu. V opačném případě vrátí zpráva hodnotu -1.

Poznámky

Tato členová funkce implementuje chování zprávy DTM_SETMCCOLORWin32, jak je popsáno v sadě Windows SDK.

Příklad

Podívejte se na příklad pro CDateTimeCtrl::GetMonthCalColor.

CDateTimeCtrl::SetMonthCalFont

Nastaví písmo, které bude ovládací prvek pro výběr data a času používat ovládací prvek podřízený kalendář měsíce.

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

Parametry

hFont
Úchyt pro písmo, které bude nastaveno.

bRedraw
Určuje, zda má být ovládací prvek překreslen okamžitě po nastavení písma. Nastavení tohoto parametru tak, aby TRUE ovládací prvek překreslil sám sebe.

Poznámky

Tato členová funkce implementuje chování zprávy DTM_SETMCFONTWin32, jak je popsáno v sadě Windows SDK.

Příklad

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

Poznámka:

Pokud použijete tento kód, budete chtít vytvořit člena CDialog-odvozené třídy s názvem m_MonthFont typu CFont.

CDateTimeCtrl::SetMonthCalStyle

Nastaví styl ovládacího prvku rozevíracího kalendáře měsíce, který je přidružený k aktuálnímu ovládacímu prvku pro výběr data a času.

DWORD SetMonthCalStyle(DWORD dwStyle);

Parametry

dwStyle
[v] Nový styl ovládacího prvku kalendáře měsíce, což je bitové kombinace (OR) stylů ovládacího prvku kalendáře měsíce. Další informace naleznete v části Styly ovládacího prvku Kalendář měsíce.

Návratová hodnota

Předchozí styl ovládacího prvku rozevíracího kalendáře měsíce.

Poznámky

Tato metoda odešle DTM_SETMCSTYLE zprávu popsanou v sadě Windows SDK.

Příklad

První příklad kódu definuje proměnnou , m_dateTimeCtrlkterá se používá pro programový přístup k ovládacímu prvku pro výběr data a času. Tato proměnná se používá v dalším příkladu.

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

Následující příklad kódu nastaví ovládací prvek pro výběr data a času tak, aby zobrazoval čísla týdnů, zkrácené názvy dnů v týdnu a žádný indikátor dnešního dne.

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

Nastaví minimální a maximální povolený systémový čas pro ovládací prvek pro výběr data a času.

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

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

Parametry

pMinRange
Ukazatel na COleDateTime objekt nebo CTime objekt obsahující nejstarší povolený čas v objektu CDateTimeCtrl .

pMaxRange
Ukazatel na COleDateTime objekt nebo CTime objekt obsahující nejnovější čas povolený v objektu CDateTimeCtrl .

Návratová hodnota

Nenulové, pokud je úspěšné; jinak 0.

Poznámky

Tato členová funkce implementuje chování zprávy DTM_SETRANGEWin32, jak je popsáno v sadě Windows SDK. V implementaci mfc můžete zadat buď nebo COleDateTime CTime použití. COleDateTime Pokud má NULL objekt stav, oblast se odebere. CTime Pokud je NULLukazatel nebo COleDateTime ukazatel, oblast bude odebrána.

Příklad

Podívejte se na příklad pro CDateTimeCtrl::GetRange.

CDateTimeCtrl::SetTime

Nastaví čas v ovládacím prvku pro výběr data a času.

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

Parametry

timeNew
Odkaz na COleDateTime objekt obsahující objekt, na který bude ovládací prvek nastaven.

pTimeNew
Ve druhé verzi výše ukazatel na CTime objekt obsahující čas, na který bude ovládací prvek nastaven. Ve třetí verzi výše ukazatel na SYSTEMTIME strukturu obsahující čas, na který bude ovládací prvek nastaven.

Návratová hodnota

Nenulové, pokud je úspěšné; jinak 0.

Poznámky

Tato členová funkce implementuje chování zprávy DTM_SETSYSTEMTIMEWin32, jak je popsáno v sadě Windows SDK. V implementaci SetTimeMFC můžete použít COleDateTime nebo CTime třídy, nebo můžete použít SYSTEMTIME strukturu k nastavení informací o čase.

Příklad

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

Viz také

Mfc – ukázka CMNCTRL1
CWnd Třída
Graf hierarchie
CMonthCalCtrl Třída