COleDateTime::SetDate
Nastaví datum tohoto COleDateTime objektu.
int SetDate(
int nYear,
int nMonth,
int nDay
) throw( );
Parametry
- nYear, nMonth, nDay
Uveďte datum součásti zkopírovat do tohoto COleDateTime objektu.
Vrácená hodnota
Nula Pokud hodnota tohoto COleDateTime objekt byl nastaven úspěšně; jinak, 1.Tuto hodnotu je založen DateTimeStatus Výčtový typ.Další informace naleznete SetStatus členské funkce.
Poznámky
Datum je nastavena na zadané hodnoty.Čas je nastavena na čas 0, půlnoc.
Naleznete v následující tabulce hranice hodnoty parametru:
Parametr |
Hranice |
---|---|
nYear |
100 – 9999 |
nMonth |
1 – 12 |
nDay |
0 – 31 |
Pokud přeteče den v měsíci, je převedena na správný den příštího měsíce a měsíce a roku se odpovídajícím způsobem zvětší.Den hodnota nula znamená poslední den předchozího měsíce.Chování je stejný jako SystemTimeToVariantTime .
Pokud není platná hodnota datum zadané parametry, je nastaven stav tohoto objektu COleDateTime::invalid.Používejte GetStatus kontrola platnosti datum hodnotu a neměli předpokládat hodnotu m_dt zůstane nezměněna.
Zde jsou některé příklady hodnoty data:
nYear |
nMonth |
nDay |
Value |
---|---|---|---|
2000 |
2 |
29 |
29. Února 2000 |
1776 |
7 |
4 |
4. Července 1776 |
1925 |
4 |
35 |
35. Dubna 1925 (neplatné datum) |
10000 |
1 |
1 |
Ledna 10000 (neplatné datum) |
Chcete-li nastavit datum a čas, viz COleDateTime::SetDateTime.
Informace o členské funkce, které dotazu na hodnotu tohoto COleDateTime objekt, viz následující funkce členů:
Další informace o hranice pro COleDateTime hodnoty naleznete v článku datum a čas: podpora automatizace.
Příklad
// set only the date, time set to midnight
dt.SetDate(1999, 3, 19);
ASSERT(dt.GetYear() == 1999);
ASSERT(dt.GetDay() == 19);
ASSERT(dt.GetMonth() == 3);
ASSERT(dt.GetHour() == 0);
ASSERT(dt.GetMinute() == 0);
ASSERT(dt.GetSecond() == 0);
// setting the time only resets the date to 1899!
dt.SetTime(22, 15, 0);
ASSERT(dt.GetYear() == 1899);
ASSERT(dt.GetDay() == 30);
ASSERT(dt.GetMonth() == 12);
ASSERT(dt.GetHour() == 22);
ASSERT(dt.GetMinute() == 15);
ASSERT(dt.GetSecond() == 0);
Požadavky
Záhlaví: atlcomtime.h