关于checklistbox的使用 |
尚未結案
|
liangzai
初階會員 發表:77 回覆:91 積分:33 註冊:2004-08-13 發送簡訊給我 |
请问各位大哥,有谁使用过checklistbox这个组件?
我现在使用它,遇到一些问题:(1)我通过程序将一些数据写入到数据库中,然后通过checklistbox同步将数据库中的数据显示出来,但是有点问题:比如说我将某条记录加入到数据库,checklistbox不能将我刚才的记录正常显示出来,而我关闭程序,重新打开,刚才的纪录又能正常显示?什么原因?不明白?(2)我想在使用checklistbox时,先检查其有没有被选中的纪录,如果没有,给出一个错误提示“请选中纪录”,如果有,则对该条记录进行修改?怎么实现?
两个问题,请各位大哥赐教!谢谢!
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ 如果需要做到同步顯示處理的話﹐根据資料集元件開啟的時機﹐您使用如下兩種方法處理﹐需要先消空CheckListBox元件的Items內容﹕一﹒如果資料集元件是在設計時期就開啟了﹐您可將程式碼寫在連接此資料集元件的DataSource元件的OnDataChange事件中﹐如果資料集元件是在執行時期手動開啟的話﹐可將程式碼寫在資料集元件的AfterOpen﹐AfterPost﹐及AfterDelete事件中﹒ 判斷是否有選中的資料方法如下﹕
Var I, J: Integer; begin J := 0; For I:=0 to CheckListBox1.Items.Count-1 do begin If CheckListBox1.Checked[I] = True then J := J + 1; end; if J = 0 then ShowMessage('請先勾選資料'); end;================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟 |
liangzai
初階會員 發表:77 回覆:91 積分:33 註冊:2004-08-13 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好﹗ 將如下程式碼寫在CheckListBox的OnClick事件中即可﹕
procedure TForm1.CheckListBox1Click(Sender: TObject); Var I, J: Integer; begin J := CheckListBox1.ItemIndex; For I:=0 to CheckListBox1.Items.Count-1 do begin if I <> J then CheckListBox1.Checked[I] := False; end; end;================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟 |
liangzai
初階會員 發表:77 回覆:91 積分:33 註冊:2004-08-13 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |