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

DBGrid 能實現這樣的效果嗎﹖

尚未結案
lvluyang
一般會員


發表:18
回覆:9
積分:5
註冊:2004-09-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-10-16 10:19:30 IP:218.247.xxx.xxx 未訂閱
程式中的query1中顯示的是一個table的所有記錄﹐有一個datasource想關聯﹐然后再聯上一個 DBGRID 表格里有一個欄位顯示的是size的值﹐在不改變QUERY1的SQL的情況下,為DBGRID寫程式讓其只顯示size>20 的值, -----------------------------------------------------謝謝﹗
cashxin2002
版主


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-10-16 10:31:31 IP:202.62.xxx.xxx 未訂閱
您好﹗    將以下程式寫在DBGrid元件的OnDrawColumnCell重繪事件中試試﹕
begin
  if DBGrid1.Columns[欄位索引].Field.AsInteger <= 20 then
    begin
      DBGrid1.Columns[欄位索引]Font.Color := 相同于DBGrid1底色的顏色值;
      DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
    end;
end;
========================= 大病初愈﹐休養調整中... ========================= 發表人 - cashxin2002 於 2004/10/16 10:42:38
------
忻晟
wameng
版主


發表:31
回覆:1336
積分:1188
註冊:2004-09-16

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-10-16 10:33:51 IP:61.222.xxx.xxx 未訂閱
不使用到修改資料。 可以在 DBGRID 的 ONDrawColumnCel 直接替代原來顯示文字 procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if SameText(Column.FieldName,'size') then begin DBGrid1.Canvas.FillRect(Rect); if Column.Field.asInteger>20 then begin DBGrid1.Canvas.TextRect(Rect,Rect.Left 2,Rect.TOP 2,Column.Field.asString); end; end; end; 不好意思!沒有看到 cashxin2002 版主的發表 發表人 - wameng 於 2004/10/16 10:35:54
yenhorng
中階會員


發表:12
回覆:82
積分:94
註冊:2002-06-18

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-10-18 00:05:54 IP:220.143.xxx.xxx 未訂閱
您好: 還有一個Filter可以利用...再設定Filtered := True;
likush
高階會員


發表:5
回覆:235
積分:103
註冊:2002-10-08

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-10-19 11:18:59 IP:220.134.xxx.xxx 未訂閱
你好 除了cashxin2002兄的建議,另提供種建議 設Filtered := True 然後在 procedure TForm1.Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean); begin Accept := Table1.FieldByName(field1').AsInteger > 100; end; 如此可直接過濾資料,僅顯示你要顯示的資料 ========================= 讀萬卷書~不如來K.TOP走一遭 =========================
系統時間:2024-06-29 16:20:57
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!