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
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_dateTimeCtrl
která 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
Volání
CDateTimeCtrl
k vytvoření objektuCDateTimeCtrl
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í Create
se 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
TRUE
pokud 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_dateTimeCtrl
která 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_GETMCCOLOR
Win32, 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_GETRANGE
Win32, 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_GETSYSTEMTIME
Win32, jak je popsáno v sadě Windows SDK. V implementaci GetTime
MFC 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
dwFlags
struktury . 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_VALID
hodnota 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_dateTimeCtrl
která 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_SETFORMAT
Win32, 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_SETMCCOLOR
Win32, 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_SETMCFONT
Win32, 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_dateTimeCtrl
která 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_SETRANGE
Win32, 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 NULL
ukazatel 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_SETSYSTEMTIME
Win32, jak je popsáno v sadě Windows SDK. V implementaci SetTime
MFC 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