全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2792
推到 Plurk!
推到 Facebook!

列印報表的錯誤訊息:List index out of bounds(-1) ??

答題得分者是:supman
depblue
一般會員


發表:38
回覆:29
積分:13
註冊:2004-12-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-07-08 11:41:56 IP:220.132.xxx.xxx 未訂閱
我使用Delphi5和聯銓的Visual Report製作報表 當我在預覽列印時,如果查詢的筆數太多,第一頁畫面無法立即顯示時,若是我把游標移到另外一個畫面後,在一次移回報表,就會出現如下的錯誤訊息 Project ..exe raised exception class EStringListError with message 'List index out of bounds(-1)'.Process stopped 附註:如果第一個畫面有顯示資料出來,移動指標並不會出現上面的錯誤訊息。 如果剛開始畫面沒有出現就去開其他畫面(例如開網頁),等到報表資料畫面出現後,在回到報表也不會出現問題。 請問有什麼方法可以解決? 難道只能等第一頁畫面出現才可以嗎??
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-07-08 12:03:19 IP:61.70.xxx.xxx 未訂閱
您好: 會出現這個錯誤訊息應該是您在使用TStringList時,比如StringList只有5個,但您去存取第6個,就會出現這樣的錯誤,您可以先朝這方向,利用單步追蹤去看您的程式錯誤發生在哪邊,若無法解決問題,將程式單純化後貼上來讓大家看,比較容易解決問題,
depblue
一般會員


發表:38
回覆:29
積分:13
註冊:2004-12-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-07-08 14:56:30 IP:220.132.xxx.xxx 未訂閱
引言: 您好: 會出現這個錯誤訊息應該是您在使用TStringList時,比如StringList只有5個,但您去存取第6個,就會出現這樣的錯誤,您可以先朝這方向,利用單步追蹤去看您的程式錯誤發生在哪邊,若無法解決問題,將程式單純化後貼上來讓大家看,比較容易解決問題,
可是我並沒有使用到TStringList這個元件 難道是報表在顯示出資料之前,會先暫存到這個元件裡, 還是說報表本身就是一個大的TStringList元件,提供顯示資料.
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-07-08 16:09:04 IP:61.70.xxx.xxx 未訂閱
當然不一定是TStringList. 請您依照我上面提的步驟處理,否則沒有人可以幫助您. 1.如某物件只有5個,但您去存取第6個,就會出現這樣的錯誤 2.利用單步追蹤去看您的程式錯誤發生在哪邊. 3.若無法解決問題,將程式單純化後貼上來讓大家看,比較容易解決問題.
depblue
一般會員


發表:38
回覆:29
積分:13
註冊:2004-12-27

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-07-11 11:13:19 IP:220.132.xxx.xxx 未訂閱
我一步一步低去追蹤錯誤,不過程式run完,並沒有錯誤發生 我試了多次,錯誤都是發生在直接執行時的這種情況下: 當畫面資料尚未出現 我開啟第二視窗後 在把指標移回剛剛的報表(資料尚未出現),就會出現錯誤 如果是在資料出現後在把指標移回報表(資料已經出現),就不會有錯誤發生
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-07-12 11:08:43 IP:61.70.xxx.xxx 未訂閱
如果單步執行不會有問題,使用ShowMessage('1234');加在程式碼中間,如果說程式跑跳出1234後就出現錯誤訊息,或出現錯誤訊息後馬上就跳出1234,那就知道出問題程式碼是什麼了. 聯銓的Visual Report我沒用過,不過在delphi5時用QuickRep還是有一些問題,有許是Report元件本身的問題@@"
depblue
一般會員


發表:38
回覆:29
積分:13
註冊:2004-12-27

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-07-17 14:56:29 IP:59.114.xxx.xxx 未訂閱
引言: 如果單步執行不會有問題,使用ShowMessage('1234');加在程式碼中間,如果說程式跑跳出1234後就出現錯誤訊息,或出現錯誤訊息後馬上就跳出1234,那就知道出問題程式碼是什麼了. 聯銓的Visual Report我沒用過,不過在delphi5時用QuickRep還是有一些問題,有許是Report元件本身的問題@@"
謝謝你的幫忙!!經過更換新的版本之後,問題已經獲得解決! thanks!
系統時間:2024-05-11 18:36:23
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!