有關於Function |
答題得分者是:h@visli
|
tea15
初階會員 ![]() ![]() 發表:64 回覆:72 積分:27 註冊:2005-06-15 發送簡訊給我 |
您們好,
我有一個問題...想用function做出回傳值動作。
就是我希望用一個edit1輸入日期{例:20050822},要Label顯示出此日期是星期幾...
並且判斷是否為星期六、或星期日…若是,就加一天或二天,避免碰到週末這兩天,用edit2顯示出日期。 請各位大大幫幫忙。 private
Function MyWorkDate(InDate : TDate) : TDate;
{ Private declarations }
procedure TForm1.Button1Click(Sender: TObject);
Function MyWorkDate(InDate : TDate) : TDate;
var
DOW : Word;
R : TDate;
begin
edit1.Text:=strtoint(DOW);
DOW := DayOfTheWeek(InDate);
Case DOW of
6 : R := InDate + 2;
7 : R := InDate + 1;
else
R := InDate;
end;
Result := R;
label1.caption:=R;
end;
begin
Edit2.Text := DateToStr(MyWorkDate(MonthCalendar1.Date));
end; 以上是我的程式碼...
|
h@visli
資深會員 ![]() ![]() ![]() ![]() ![]() 發表:103 回覆:429 積分:431 註冊:2004-02-13 發送簡訊給我 |
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls, DateUtils; type TForm1 = class(TForm) Edit1: TEdit; Button1: TButton; Edit2: TEdit; Label1: TLabel; MonthCalendar1: TMonthCalendar; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); Function MyWorkDate(InDate : TDate) : TDate; var DOW : Word; R : TDate; begin edit1.Text:= FormatDateTime('yyyymmdd', InDate); DOW := DayOfTheWeek(InDate); Case DOW of 6 : R := InDate 2; 7 : R := InDate 1; else R := InDate; end; label1.caption := IntToStr(DayOfTheWeek(R)); Result := R; end; begin Edit2.Text := DateToStr(MyWorkDate(MonthCalendar1.Date)); end; end.---------------------------- 於Delphi K.Top之上 博采眾家之長, 奉獻綿薄之力 ---------------------------
------
------------------------ 博采眾家之長,奉獻綿薄之力 ------------------------ |
tea15
初階會員 ![]() ![]() 發表:64 回覆:72 積分:27 註冊:2005-06-15 發送簡訊給我 |
|
tea15
初階會員 ![]() ![]() 發表:64 回覆:72 積分:27 註冊:2005-06-15 發送簡訊給我 |
|
tea15
初階會員 ![]() ![]() 發表:64 回覆:72 積分:27 註冊:2005-06-15 發送簡訊給我 |
你們好,
我現在想用一個輸入日期的方式來判斷星期幾..
利用一個edit輸入(例20050822),那麼要用程式去判斷是否會碰到週末,若是,就加一天或兩天…
那該如何改呢?
procedure TForm1.Button1Click(Sender: TObject);
Function MyWorkDate(InDate : TDate) : TDate;
var
DOW : Word;
R : TDate;
s:string;
begin edit1.Text:= FormatDateTime('yyyymmdd', InDate);
DOW := DayOfTheWeek(InDate);
if RadioButton1.Checked=true then
begin
Case DOW of
6 : R := InDate - 1;
7 : R := InDate -2;
else
R := InDate-1;
end;
end; if RadioButton2.Checked=true then
begin
Case DOW of
5:R:=InDate 3;
6 : R := InDate 2;
7 : R := InDate 1;
else
R := InDate 1;
end;
end;
label1.caption := '星期' IntToStr(DayOfTheWeek(R));
Result := R;
end;
begin
Edit2.Text := DateToStr(MyWorkDate(MonthCalendar1.Date));
end;
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |