急!大家帮忙:怎样得到某个月的天数?

iloveyan 2002-01-16 05:43:11
...全文
129 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
suny_2001 2002-01-17
  • 打赏
  • 举报
回复
问题解决了
suny_2001 2002-01-17
  • 打赏
  • 举报
回复
function TForm1.DaysInMonth(ADate:TDateTime):Integer;
var
MyMonth,MyYear,MyDay: Word;
MyDayTable:TDayTable;
tmpBool : Boolean;
begin
DecodeDate(ADate, MyYear,MyMonth, MyDay);
tmpBool := IsLeapYear(MyYear);
MyDayTable := MonthDays[tmpBool];
Result := MyDayTable[MyMonth];
end;

procedure TForm1.Button3Click(Sender: TObject);
var
MyDate : TDateTime;
tmpStr : String;
tmpInt : Integer;
begin
MyDate :=strtodate('02/10/2002');//在这里可以输入你的日期
tmpStr := FormatDateTime('mmmm yyyy',MyDate);
tmpInt := DaysInMonth(MyDate);
ShowMessage(tmpStr + '有 ' + IntToStr(tmpInt) + '天');
end;

qiubolecn 2002-01-16
  • 打赏
  • 举报
回复
d6 下

uses
dateutils

函数
daysinamonth
m_leaner 2002-01-16
  • 打赏
  • 举报
回复
好象跑题了,不过原理都一样。取每个月的1号,+i,到下个月1号,循环的次数减一,your wanted
m_leaner 2002-01-16
  • 打赏
  • 举报
回复
比较土,哈哈
m_leaner 2002-01-16
  • 打赏
  • 举报
回复
今天16号+?天=下个月1号;
月的天数=今天的号吗+?天-1;
function GetMonthday:integer;
var
i,today:integer;
temp:Tdatetime;
begin
today:=inttostr(fotmatdatetime('d',now()));
for i:=0 to 31 do begin
temp:=now();
temp:=temp+1;
if inttostr(formatedatetime('d',temp))=1 then break;
end;
result:=today+i-1;
end;

830

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧