如何讓DBGRID不規則選擇多筆資料 |
|
mingking0947
一般會員 ![]() ![]() 發表:30 回覆:32 積分:12 註冊:2005-07-08 發送簡訊給我 |
|
Stallion
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:52 回覆:1600 積分:1995 註冊:2004-09-15 發送簡訊給我 |
|
mingking0947
一般會員 ![]() ![]() 發表:30 回覆:32 積分:12 註冊:2005-07-08 發送簡訊給我 |
sorry,不規則讓你誤會了.這有點像excel的動作.例:點選第1筆後,按shift再點第4筆,則會連選4筆,然後可以再按ctrl點選第6筆後按shift再點選第10筆則會再從第6筆連選到第10筆.此結果會有二個區塊...這是我目前要做的程式.
點選shift或ctrl的動作不是我要問的重點,重點是要如何讓dbgrid能夠抓到這連選的4筆(讓這4筆到"SelectRows"中)及這4筆的標示(顯示顏色)?.(或許按住shift再選擇第4筆是windows的操件,但dbgrid可以做的到嗎?) 雖然dbgird可以有連選的功能,但它只能用shift 向下鍵一筆筆選,若使用者想點選幾十筆的話...這會浪費很多時間.所以如何可以讓dbgrid跳著連選? ===================引 用 文 章=================== 不是很明白你的意思? 不規則選擇,以及如何去抓的意思是啥? 你前面談到先選擇第一筆之後按住SHIT再選擇第四筆,此種操作是選擇RANGE,屬於WINDOWNS下的基本操作,另外要不規則選擇也是WINDOWS下的基本操作,也就是按住CONTROL不要放掉,之後再選取你想要的項目;另外同樣的項目選擇兩次就會取消選取,不就這樣嗎? |
mingking0947
一般會員 ![]() ![]() 發表:30 回覆:32 積分:12 註冊:2005-07-08 發送簡訊給我 |
謝謝各位前輩,標示連續範圍的問題已經找到答案了.
程式碼如下: procedure var DbSet:TDataSet; SelBookMark:TBookmarkList; i, iTransFer:integer; begin DbSet := DataSource.DataSet; SelBookMark := SelectedRows; SelBookMark.Clear; try DbSet.DisableControls; for i := iSelectStartRow to iSelectEndRow do begin DbSet.MoveBy(i-DbSet.RecNo);// SelBookMark.CurrentRowSelected := True; end; finally DbSet.EnableControls; end; end; |
syntax
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:26 回覆:1139 積分:1258 註冊:2002-04-23 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |