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

有關ValueListEditor刪除ㄉ問題

尚未結案
ado
一般會員


發表:16
回覆:16
積分:6
註冊:2004-11-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-24 15:19:32 IP:220.134.xxx.xxx 未訂閱
請問各位大大~~~ 我使用BCB6中ㄉValueListEditor建立ㄌ表格資料, 但要如何刪除這些資料ㄋ? 我使用ㄌ ValueListEditor1->DeleteRow(i) 但不論i為多少值,程式執行時都會出現「out of bound list」ㄉ錯誤, 請問該怎ㄇ刪除ValueListEditor1上ㄉ資料才對ㄋ~~ 請各位大大幫忙解答~~ 感激不盡~~
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-24 16:31:08 IP:210.65.xxx.xxx 未訂閱
Hi ado,    i 必須介於 1 與 ValueListEditor1.RowCount 之間,否則會產生 List index out of bounds(XX) 的錯誤
procedure TForm1.Button2Click(Sender: TObject);
begin
//  SpinEdit1.Value --> the row that you want to delete
  if (SpinEdit1.Value >= 1) and (SpinEdit1.Value <= ValueListEditor1.RowCount) then
    begin
      ValueListEditor1.DeleteRow(SpinEdit1.Value);
    end;
end;
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
ado
一般會員


發表:16
回覆:16
積分:6
註冊:2004-11-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-24 18:23:30 IP:220.134.xxx.xxx 未訂閱
謝謝Fishman大大~~    您所謂ㄉ SpinEdit1.Value 是指欲刪除ㄉrowㄇ? 不過我是要把所有ㄉrow都刪除, 而且每次出現ㄉrow數目會不一樣, 我是寫成這樣: for(int i=1;iRowCount;i ) { ValueListEditor1->DeleteRow(i); } 可是為何會有「out of bound list」ㄉ錯誤ㄋ? 請多多指教喔~~ ^^
justdo
高階會員


發表:2
回覆:359
積分:222
註冊:2004-08-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-11-24 20:18:46 IP:221.169.xxx.xxx 未訂閱
假設有5行的話,分別為1,2,3,4,5 你的迴圈第一次執行後會刪除1,剩下四行2,3,4,5 第二次執行會刪除3,剩下三行2,4,5 第三次執行會刪除5,剩下兩行2,4 第四次執行就會發生錯誤了... 知道原因了嗎?   基本上應該有全部清除的指令,可能叫做
Fishman
尊榮會員


發表:120
回覆:1949
積分:2163
註冊:2006-10-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-11-25 08:22:33 IP:210.65.xxx.xxx 未訂閱
Hi ado,    試試
procedure TForm1.Button3Click(Sender: TObject);
var
  I,num : integer;
begin
  for i := 1 to ValueListEditor1.RowCount -1 do
    begin
      ValueListEditor1.DeleteRow(1);
    end;
end;
或是
procedure TForm1.Button3Click(Sender: TObject);
begin
  ValueListEditor1.Strings.Clear;
end;
---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman
ado
一般會員


發表:16
回覆:16
積分:6
註冊:2004-11-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-11-25 09:09:22 IP:220.134.xxx.xxx 未訂閱
恩恩恩 我用ㄌ ValueListEditor1->Strings->Clear(); 果然可以把一次全部row刪除ㄌ! 謝謝Fishman大大喔~~ 也謝謝justdoㄉ幫忙, 可惜得分者只能有一ㄍ......... ^_^
系統時間:2024-11-23 5:24:42
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!