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

TCalendar 特定日變色, 半完成

尚未結案
zombit
初階會員


發表:63
回覆:39
積分:30
註冊:2004-05-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-26 16:11:49 IP:61.62.xxx.xxx 未訂閱
完整程式在這邊, http://home.so-net.net.tw/aswater/tmp/CalColor.zip 我要做到被點選過的日期都變色, 但是我把變色的程式碼放在 calClick 是不能動作的, 但是放到 calKeyDown 就可以, 不過每次點完後都要按一下按鍵, 特定的顏色就會出現, 不知道哪個地方沒處理好, 請指教,謝謝.
jest0024
高階會員


發表:11
回覆:310
積分:224
註冊:2002-11-24

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-26 21:40:36 IP:59.104.xxx.xxx 未訂閱
引言: 完整程式在這邊, http://home.so-net.net.tw/aswater/tmp/CalColor.zip 我要做到被點選過的日期都變色, 但是我把變色的程式碼放在 calClick 是不能動作的, 但是放到 calKeyDown 就可以, 不過每次點完後都要按一下按鍵, 特定的顏色就會出現, 不知道哪個地方沒處理好, 請指教,謝謝.
改寫DrawCell方法
TCalendar=class(Calendar.TCalendar)
private
  fSel : array[0..6,0..5]of Boolean;
  procedure DrawCell(ACol, ARow: Longint; ARect: TRect; AState: TGridDrawState); override;
end;
TForm1 = .....    procedure TCalendar.DrawCell(ACol, ARow: Longint; ARect: TRect; AState: TGridDrawState);
begin
  if fSel[ACol,ARow] then Canvas.Brush.Color :=clRed;
  Inherited;
end;    在OnClick事件中指定!!
  cal.fSel[cal.Col,cal.Row]:=true;    
發表人 - jest0024 於 2005/06/26 21:42:54
zombit
初階會員


發表:63
回覆:39
積分:30
註冊:2004-05-11

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-27 12:43:57 IP:61.62.xxx.xxx 未訂閱
謝謝 jest0024, 可以了. 
系統時間:2024-06-29 17:38:44
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!