dbgrid或dbgrideh |
尚未結案
|
huangbh57
一般會員 發表:28 回覆:21 積分:9 註冊:2004-10-11 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ 設計時期可利用DBGrid的欄位編輯器﹐加入現有欄位到欄位編輯器中﹐然后通過各欄位的ReadOnly屬性值為True控制此欄位是否為ReadOnly. 欄位的寬度也可以通過DBGrid元件欄位編輯器中各欄位之Width屬性來調整﹒ 執行時期可參考如下﹕
begin DBGrid1.Columns[欄位索引].ReadOnly := True; end;========================= 大病初愈﹐休養調整中... =========================
------
忻晟 |
change.jian
版主 發表:29 回覆:620 積分:439 註冊:2003-06-02 發送簡訊給我 |
hi,huangbh57:
1.不曉得你的某列是指橫列還是直列?如果是直的某列,其實你可以把DBGrid對應的column ReadOnly:=True即可.例如第0行設為不可修改,則如下:
DBGrid1.Columns.Items[0].ReadOnly:=True;
如果是橫的某列可不可以編輯,那麼直接在對應的DataSet裡在BeforeEdit去判斷,如果該筆資料不能編輯,那麼就abort即可,或者raise exception也可以. 2.設置欄位的寬度應以標題的為准,可以如下:
DataSet.Fields[0].DisplayWidth:=Length(DataSet.Fields[0].DisplayLabel); 發表人 - change.jian 於 2004/10/16 11:50:09
|
huangbh57
一般會員 發表:28 回覆:21 積分:9 註冊:2004-10-11 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
|
change.jian
版主 發表:29 回覆:620 積分:439 註冊:2003-06-02 發送簡訊給我 |
這樣似乎只能動態去設定buttontype屬性.在afterScroll裡,判斷該列可不可以操作,如果不可以,就把buttontype設為cbsNone,並且,DBGrid.Option減掉[dgEditing],反之就把buttontype設為cbsEllipsis,並且把option加回[dgEditing].不曉得這樣有沒有達到你要的功能?
引言: 我的意思是:dbgrid如何設置某列為不可操作(當光標移到直列欄位時,buttontype設置為cbsellipsis,cbsellipsis看不到,如設為DBGrid1.Columns[欄位索引].ReadOnly := True則cbsellipsis會可操作,enabled有此屬性嗎?) |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |