COleDateTime::SetDate
Imposta la data di questo oggetto COleDateTime.
int SetDate(
int nYear,
int nMonth,
int nDay
) throw( );
Parametri
- nYear, nMonth, nDay
Scegliere i componenti date da copiare in questo oggetto COleDateTime.
Valore restituito
Zero se il valore di questo oggetto COleDateTime fosse impostato correttamente; in caso contrario, 1.Questo valore restituito è basato sul tipo enumerato DateTimeStatus.Per ulteriori informazioni, vedere la funzione membro SetStatus.
Note
La data è impostata sui valori specificati.Il tempo viene impostato di orologio 0, mezzanotte.
Vedere la tabella seguente per i limiti dei valori di parametro:
Parametro |
Limiti |
---|---|
nYear |
100 – 9999 |
nMonth |
1 – 12 |
nDay |
0 – 31 |
Se il giorno degli overflow di mese, viene convertita al giorno del mese e il giorno e/o l'anno viene incrementato di conseguenza.Un valore di ora pari a zero indica l'ultimo giorno del mese precedente.Il comportamento sarà uguale a SystemTimeToVariantTime.
Se il valore della data specificati dai parametri non è valido, lo stato di questo oggetto è impostato su COleDateTime::invalid.Utilizzare GetStatus per verificare la validità del valore DATE e non occorre considerare che il valore m_dt restare invariato.
Di seguito sono riportati alcuni esempi di valori di data:
nYear |
nMonth |
nDay |
Valore |
---|---|---|---|
2000 |
2 |
29 |
29 febbraio 2000 |
1776 |
7 |
4 |
4 luglio 1776 |
1925 |
4 |
35 |
35 Aprile 1925 (data non valida) |
10000 |
1 |
1 |
1° gennaio 10000 (Data non valida) |
Per impostare entrambe data e ora, vedere COleDateTime::SetDateTime.
Per informazioni sulle funzioni membro che interroga il valore di questo oggetto COleDateTime, vedere le seguenti funzioni membro:
Per ulteriori informazioni sui limiti dei valori COleDateTime, vedere l'articolo data e ora: supporto di automazione.
Esempio
// 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);
Requisiti
Header: atlcomtime.h