日期時間 |
尚未結案
|
kkym
一般會員 發表:17 回覆:13 積分:6 註冊:2003-04-16 發送簡訊給我 |
|
tea15
初階會員 發表:64 回覆:72 積分:27 註冊:2005-06-15 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ 小弟的想法如下﹕
在Form中加一個Edit元件即可(如Name := EditTime)﹒
一﹒針對使用者在此EditTime中輸入的內容設有一限制﹐即輸入的內容長度須為2﹐然后只允許輸入數字字符﹐方法如下﹕
將EditTime元件的MaxLength屬性值設為2
在EditTime元件的OnKeyPress事件中輸入如下程式碼
begin if Not (Key In ['0'..'9', #8]) then Abort; end;二﹒假設是使用ADOQuery元件﹐在相關的開始查詢作用的事件中輸入如下程式碼 begin ADOQuery1.Close; ADOQuery1.Clear; ADOQuery1.SQL.Add('Select * From 資料表名稱 Where ') ADOQuery1.SQL.Add('Hour(日期) > :MyTime'); ADOQuery1.Parameters.ParamByName('MyTime').Value := StrToInt(EditTime.Text); ADOQuery1.Open; end;================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟 |
kkym
一般會員 發表:17 回覆:13 積分:6 註冊:2003-04-16 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ 第一個問題﹐在EditTime元件中﹐使用需要輸入的只是日期時間格式中的小時﹐如您需要查詢的條件是以12:00:00以后的﹐使用者只需在此輸入12即可﹐再比如說是07:00:00以后的﹐使用者只需要在此輸入7即可﹒ 第二個問題﹐小弟在SQL中使用Hour函數(Hour(日期))﹐這樣即是取出日期欄位中的小時﹐且此回傳值為Integer形態﹐然后在和EditTime元件Text內容做比對時﹐又使用StrToInt函數﹐將EditTime元件中的Text內容轉為Integer形態﹐這樣就是相同的形態比較了﹒
begin ADOQuery1.Close; ADOQuery1.Clear; ADOQuery1.SQL.Add('Select * From 資料表名稱 Where '); ADOQuery1.SQL.Add('Mid(日期),1,10 = Date() and '); //增加今天的判斷條件式 ADOQuery1.SQL.Add('Hour(日期) > :MyTime'); ADOQuery1.Parameters.ParamByName('MyTime').Value := StrToInt(EditTime.Text); ADOQuery1.Open; end;================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================ 發表人 - cashxin2002 於 2005/06/30 14:25:58
------
忻晟 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |