線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1533
推到 Plurk!
推到 Facebook!

如何利用系統時間寫判斷式

答題得分者是:pceyes
od11112001
一般會員


發表:8
回覆:2
積分:2
註冊:2008-08-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-10-05 15:24:38 IP:140.128.xxx.xxx 訂閱
hi

我們打算寫一隻程式

要讓程式取得系統時間後 能夠在RadioGroup自動選取

例如 早診 午診 晚診===>這是RadioGroup的items

假如現在登入時間是早上8:00-中午12:30 那麼RadioGroup的早診鈕便會被自動選取

中午12:30-下午18:00的午診鈕便會被自動選取

午診12:30-18:00晚診18:00-22:00

這樣的程式要如何寫判斷式呢?

------
hi
careychen
尊榮會員


發表:41
回覆:580
積分:959
註冊:2004-03-03

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-10-05 17:00:51 IP:59.126.xxx.xxx 訂閱
HI, 你可以試試下面這樣,這樣的寫法比較笨,但現在我人還不聰明,所以先貼給你~~ 

[code delphi]
var tmpNow: Double;
begin
tmpNow := TimeOf(Now);
if (tmpNow >= StrToTime('08:00')) and (tmpNow < StrToTime('12:30')) then
RadioGroup1.ItemIndex := 0
else if (tmpNow >= StrToTime('12:30')) and (tmpNow < StrToTime('18:00')) then
RadioGroup1.ItemIndex := 1
else if (tmpNow >= StrToTime('18:00')) and (tmpNow < StrToTime('22:00')) then
RadioGroup1.ItemIndex := 2
else
RadioGroup1.ItemIndex := -1;
end;
[/code]

===================引 用 od11112001 文 章===================
hi

我們打算寫一隻程式

要讓程式取得系統時間後 能夠在RadioGroup自動選取

例如 早診 午診 晚診===>這是RadioGroup的items

假如現在登入時間是早上8:00-中午12:30 那麼RadioGroup的早診鈕便會被自動選取

中午12:30-下午18:00的午診鈕便會被自動選取
午診12:30-18:00晚診18:00-22:00

這樣的程式要如何寫判斷式呢?

------
價值的展現,來自於你用哪一個角度來看待它!!
pceyes
尊榮會員


發表:70
回覆:657
積分:1140
註冊:2003-03-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-10-05 18:18:21 IP:220.141.xxx.xxx 訂閱
抱歉,改一下 careychen 大大的回覆提供另一個用字串比較的方式,僅供參考。


[code delphi]
procedure TForm1.FormCreate(Sender: TObject);
var tmpNow: String;
begin
tmpNow := formatdatetime('hhmm',now);
if (tmpNow >= '0800') and (tmpNow < '1230') then
RadioGroup1.ItemIndex := 0
else if (tmpNow >= '1230') and (tmpNow < '1800') then
RadioGroup1.ItemIndex := 1
else if (tmpNow >= '1800') and (tmpNow < '2200') then
RadioGroup1.ItemIndex := 2
else
RadioGroup1.ItemIndex := -1;
end;

[/code]
------
努力會更接近成功
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-10-06 12:02:40 IP:61.67.xxx.xxx 未訂閱
1.新手入學, 請先閱讀版規, 謝謝合作
2.此文非資料庫區討論, 移至新手問題區
3.如果求程式請到新手問題區
編輯記錄
P.D. 重新編輯於 2008-10-06 12:03:23, 註解 無‧
pceyes
尊榮會員


發表:70
回覆:657
積分:1140
註冊:2003-03-13

發送簡訊給我
#5 引用回覆 回覆 發表時間:2008-10-09 13:19:02 IP:122.118.xxx.xxx 訂閱
不敢說最聰明,但至少是最簡單

[code delphi]
procedure TForm1.Button1Click(Sender: TObject);
var
tmptime : integer;
begin
tmptime := strtoint(formatdatetime('hhmm',now));
case tmptime of
0800..1200:
RadioGroup1.ItemIndex := 0;
1400..1800:
RadioGroup1.ItemIndex := 1;
1900..2100:
RadioGroup1.ItemIndex := 2;
else
RadioGroup1.ItemIndex := -1;
showmessage('現在 ' formatdatetime('hh 時 mm 分',now) ' 是休息時間');
end;
end;

[/code]
------
努力會更接近成功
系統時間:2024-05-05 8:49:33
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!