Дни в месяце
Falk0ner, вс, 06/07/2008 - 15:34.
http://delphiworld.narod.ru/
DelphiWorld 6.0
Дни в месяце Автор: Ревенко Алексей
// Колическтво дней в любом месяце любого
// года можно получить с помощью EndOfAMonth
var
YYYY, MM, DD: Word;
D: TDateTime;
begin
DecodeDate(Date, YYYY, MM, DD);
D := EndOfAMonth(YYYY, {Номер месяца});
DecodeDate(D, YYYY, MM, DD); // DD - номер последнего дня в месяце
end;
http://delphiworld.narod.ru/
DelphiWorld 6.0
// года можно получить с помощью EndOfAMonth
var
YYYY, MM, DD: Word;
D: TDateTime;
begin
DecodeDate(Date, YYYY, MM, DD);
D := EndOfAMonth(YYYY, {Номер месяца});
DecodeDate(D, YYYY, MM, DD); // DD - номер последнего дня в месяце
end;
Получить число дней в месяце
function DaysOfMonth(mm, yy: Integer): Integer;
begin
if mm = 2 then
begin
Result := 28;
if IsLeapYear(yy) then Result := 29;
end
else
begin
if mm < 8 then
begin
if (mm mod 2) = 0 then
Result := 30
else
Result := 31;
end
else
begin
if (mm mod 2) = 0 then
Result := 31
else
Result := 30;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
days: Integer;
begin
days := DaysOfMonth(7, 2001);
ShowMessage('July 2001 has ' + IntToStr(days) + ' days');
end;
begin
if mm = 2 then
begin
Result := 28;
if IsLeapYear(yy) then Result := 29;
end
else
begin
if mm < 8 then
begin
if (mm mod 2) = 0 then
Result := 30
else
Result := 31;
end
else
begin
if (mm mod 2) = 0 then
Result := 31
else
Result := 30;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
days: Integer;
begin
days := DaysOfMonth(7, 2001);
ShowMessage('July 2001 has ' + IntToStr(days) + ' days');
end;
http://delphiworld.narod.ru/
DelphiWorld 6.0
function LastDayOfCurrentMonth: TDate;
var
y, m, d: Word;
begin
DecodeDate(now, y, m, d);
m := m + 1;
if m 12 then
begin
y := y + 1;
m := 1;
end;
Result := EncodeDate(y, m, 1) - 1;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(DateToStr(LastDayOfCurrentMonth));
end;
http://delphiworld.narod.ru/
DelphiWorld 6.0
var
y, m, d: Word;
begin
DecodeDate(now, y, m, d);
m := m + 1;
if m 12 then
begin
y := y + 1;
m := 1;
end;
Result := EncodeDate(y, m, 1) - 1;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(DateToStr(LastDayOfCurrentMonth));
end;
Отправить комментарий