全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1426
推到 Plurk!
推到 Facebook!

請問:要如何將MonthCalendar和DBGrid相關連呢??......

答題得分者是:cashxin2002
girl197120
一般會員


發表:1
回覆:2
積分:0
註冊:2003-08-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-08-19 10:40:12 IP:210.70.xxx.xxx 未訂閱
我想要將MonthCalendar和DBGrid相關連,讓我可以在點選MonthCalendar其中任 何一個日期時,可以讓DBGrid中如果有跟它是同一天日期的資料顯示出來,如果 那一天沒有資料的話,就讓它空白。(當然DBGrid中已經存有多筆資料) 可不可以麻煩各位大哥~大姊~幫幫小妹我一下下~謝謝~~^^
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-08-19 11:23:57 IP:63.84.xxx.xxx 未訂閱
您好﹗    以下是小弟用到過的Code﹐將此Code寫在MonthCalendar的OnClick事件中﹕
procedure TForm1.MonthCalendar1Click(Sender: TObject);
begin
  Label1.Caption := DateToStr(MonthCalendar1.Date);
  //用Label1來測試顯示一下日期
  ADOQuery1.Close;
  ADOQuery1.SQL.Text := 'Select * From 訂單 where 訂購日期=:DATE';
  //請將訂購日期欄位置換成您資料表中的日期欄位名稱
  ADOQuery1.Parameters.ParamByName('DATE').Value :=
                                   DateToStr(MonthCalendar1.Date);
  //与MonthCalendar所顯示相同日期的欄位被指定給DATE
  ADOQuery1.Open;
end;
參考看看﹗ ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
hahalin
版主


發表:295
回覆:1698
積分:823
註冊:2002-04-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-08-19 12:01:14 IP:61.222.xxx.xxx 未訂閱
參考看看 建立一個form,擺一個MonthCalendar,在這個form的public區段宣告一個變數,變數型態是tdate(當然你也可以弄成property來存取,弄得比較OO),然後呢,在這個form的unit裡面寫一個procedure,可以傳入tdate形態的參數,然後在show這個form的時候可以依據這個傳入的參數來顯示日期(當然你也可以寫一個function,在這個from show modal之後且modalresult=mrok的時候,回傳一個型態為tdate的回傳值. 我知道你看得很累,我也key得很累. 呼.... 肚子餓的時候打字總是特別無力... There is a raising fire in my heart tonight,growing higher and higher in my soul I want to ride on the silver dove far into the night,till I make you take me on your mighty wing,take me on your mighty wing to cross the sky
girl197120
一般會員


發表:1
回覆:2
積分:0
註冊:2003-08-19

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-08-20 09:59:52 IP:210.70.xxx.xxx 未訂閱
大哥~你講得是很清楚~可束我不太會寫程式耶~還在研究當中... 你所說的,在
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-08-20 10:22:31 IP:63.84.xxx.xxx 未訂閱
您好﹗    不好意思﹐打扰一下﹐不知您有沒有試過小弟寫的方法﹐應該可以達到您所需要的效果﹐而且程式也比較簡單﹐看您自己的選擇﹐适合用哪種方法﹒    參考看看﹗    ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
girl197120
一般會員


發表:1
回覆:2
積分:0
註冊:2003-08-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-08-20 11:03:50 IP:210.70.xxx.xxx 未訂閱
你好丫~cashxin2002大哥哥~你的方法我也還 正在研究當中說~~ 對了~為什麼在我打第一行 "Label1.Caption := DateToStr(MonthCalendar1.Date);" 改成 "DBGrid1:= DateToStr(MonthCalendar1.Date);" 還束不行呢?是因為那一行是label和MonthCalendar1.Date的固定公式嗎? 還有~~那個大哥哥你的ADOQuery1是delphi第六版或第七版的對不對? 我是用第五版的啦~如果用第五版的話,一樣可以做出來嗎?如果第五版真 的不行的話我還是可以用第七版的啦^^~~ 而且~~也要把 ADOQuery1改成table嗎?嗯~~這是我目前的問題啦~ 之後的我會繼續問地唷~ 拜託~~大哥哥指點我一下下~好不好?~~
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-08-20 11:43:10 IP:63.84.xxx.xxx 未訂閱
您好﹗    回答如下﹕ 對了~為什麼在我打第一行 Label1.Caption := DateToStr(MonthCalendar1.Date);改成 DBGrid1:= DateToStr(MonthCalendar1.Date); 還束不行呢?是因為那一行是label和MonthCalendar1.Date的固定公式嗎? //其實我寫這一句的目的是做一個小測試而已﹐确認是否可正确地把 //MonthCalendar中的日期值抓出來﹐對程式而已﹐也可以說是沒有影響﹒ //您用DBGrid1來抓這個字串值﹐當然不對啦﹐DBGrid是一個資料感知元件﹐ //目的是用來顯示當前資料集元件對應的資料表內容﹐而不是顯示一個字串喔 還有~~那個大哥哥你的ADOQuery1是delphi第六版或第七版的對不對? 我是用第五版的啦~如果用第五版的話,一樣可以做出來嗎?如果第五版真 的不行的話我還是可以用第七版的啦^^~~ 而且~~也要把 ADOQuery1改成table嗎?嗯~~這是我目前的問題啦~ //第五版中就有提供ADO元件﹐所以用第五版也是可以做的啦 //為什么要把ADOQuery1改成Table﹖有些看不懂 我把程式碼再貼一次﹐附上一些說明﹐可能對您的理解有些幫助﹒ < class="code">procedure TForm1.MonthCalendar1Click(Sender: TObject); //MonthCalendar元件的OnClick事件中﹐該事件的作用是當點擊此 //MonthCalendar元件時﹐就執行事件中程式碼 begin Label1.Caption := DateToStr(MonthCalendar1.Date); //用Label1來測試顯示一下日期(僅測試而已﹐也可以不寫) ADOQuery1.Close; //關閉資料連線 ADOQuery1.SQL.Text := 'Select * From 訂單 where 訂購日期=:DATE'; //SQL語法﹐用來查詢訂單資料表中訂購日期欄位与變數:DATE相同的 //資料﹐請將[訂購日期]換成您資料表中的日期欄位名稱﹐[訂單]換成您 //資料表的名稱 ADOQuery1.Parameters.ParamByName('DATE').Value := DateToStr(MonthCalendar1.Date); //上一句中有設定一個名為DATE的變數﹐在這里就指定該變數的值 //MonthCalendar1.Date是一個日期形態值﹐需要用DateToStr方法來轉換 //成字串形態﹐才能与('DATE').Value的形態相同 ADOQuery1.Open; //開啟連線﹐也就是執行上面兩句SQL查詢﹐就會找出与MonthCalendar1 //點選日期的相同資料﹐并通過DBGrid顯示出來(您需要的效果) end; 當然在此之前﹐您需要正确使用ADOConnection元件連接上資料庫﹐并在Form中加入ADOQuery元件連接上ADOConnection﹐DataSource元件連接上ADOQuery1﹐DBGrid元件連接上DataSouce﹒ 參考看看﹗ ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟
系統時間:2024-06-24 4:01:32
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!