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

請問 TList 元件的每一列是否有限制長度?

尚未結案
ppippenkimo
一般會員


發表:7
回覆:17
積分:4
註冊:2003-11-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-05-03 22:34:22 IP:211.23.xxx.xxx 未訂閱
各位前輩好: 我將一堆字串加入List的某一列,發現跑的時候看不到任何東西,但卻能順利進行下一步。所以請問各位大大,是不是List的每列有限制長度?如果有的話,能容忍多大長度?如果超過,會不會造成資料遺失?謝謝!
anpino
版主


發表:31
回覆:477
積分:231
註冊:2003-01-02

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-05-04 09:43:47 IP:211.23.xxx.xxx 未訂閱
可以用ColWidths屬性設定某一列的寬。 不知道有沒有誤解您的意思。... ------------------------------- 數學系是內功很強(邏輯/分析) 資工系是招式很多(程式技巧) 就像令狐沖VS東方不敗:D -------------------------------
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-05-04 14:33:02 IP:218.35.xxx.xxx 未訂閱
引言: 各位前輩好: 我將一堆字串加入List的某一列,發現跑的時候看不到任何東西,但卻能順利進行下一步。所以請問各位大大,是不是List的每列有限制長度?如果有的話,能容忍多大長度?如果超過,會不會造成資料遺失?謝謝!
ppippenkimo你好 請問你是用TList還是用TStringList? 如果是用TList的話,裡面存了什麼型態的資料?是AnsiString嗎?
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-05-04 14:34:24 IP:218.35.xxx.xxx 未訂閱
引言: 各位前輩好: 我將一堆字串加入List的某一列,發現跑的時候看不到任何東西,但卻能順利進行下一步。所以請問各位大大,是不是List的每列有限制長度?如果有的話,能容忍多大長度?如果超過,會不會造成資料遺失?謝謝!
ppippenkimo你好 請問TList裡面存了什麼型態的資料?是AnsiString嗎?要不要post你部分的程式上來? 發表人 - pwipwi 於 2004/05/04 14:39:22
ppippenkimo
一般會員


發表:7
回覆:17
積分:4
註冊:2003-11-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-05-04 20:06:58 IP:211.23.xxx.xxx 未訂閱
引言: [quote] ppippenkimo你好 請問TList裡面存了什麼型態的資料?是AnsiString嗎?要不要post你部分的程式上來? 發表人 - pwipwi 於 2004/05/04 14:39:22
您好! 我是將資料庫的每筆字串加到ListBox的其中一行,例如: ID Data 1 ABCDEF 2 DFGH 3 ... 那ListBox的某一行就可能會是: ABCDEF, DFGH, ... 小弟我剛剛用以下程式碼測試了一下: sqlQ->SQL->Add("Select Data From DB" sqlQ->Open(); while(!sqlQ->Eof) { ListBox->Items->String[0] = ListBox->Items->String[0] sqlQ->FieldByName("Data")->AsString; } 跑幾百筆的資料時,ListBox完全正常顯示資料。 但是跑大概四千筆資料時,卻會發生ListBox第一行完全沒顯示資料。 所以我猜想是不是ListBox的每一列長度有限制? 還是小弟那兒沒注意到 ... 請各位指點迷津! Thanks!
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-05-04 21:14:37 IP:211.76.xxx.xxx 未訂閱
引言:
引言: [quote] ppippenkimo你好 請問TList裡面存了什麼型態的資料?是AnsiString嗎?要不要post你部分的程式上來? 發表人 - pwipwi 於 2004/05/04 14:39:22
您好! 我是將資料庫的每筆字串加到ListBox的其中一行,例如: ID Data 1 ABCDEF 2 DFGH 3 ... 那ListBox的某一行就可能會是: ABCDEF, DFGH, ... 小弟我剛剛用以下程式碼測試了一下: sqlQ->SQL->Add("Select Data From DB" sqlQ->Open(); while(!sqlQ->Eof) { ListBox->Items->String[0] = ListBox->Items->String[0] sqlQ->FieldByName("Data")->AsString; } 跑幾百筆的資料時,ListBox完全正常顯示資料。 但是跑大概四千筆資料時,卻會發生ListBox第一行完全沒顯示資料。 所以我猜想是不是ListBox的每一列長度有限制? 還是小弟那兒沒注意到 ... 請各位指點迷津! Thanks!
回應文章內容 ppippenkimo你好: 如果你在while裡面加上Application->ProcessMessages();結果如何?
ppippenkimo
一般會員


發表:7
回覆:17
積分:4
註冊:2003-11-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-05-04 21:34:01 IP:211.23.xxx.xxx 未訂閱
您好! 盯著ListBox看,跑到三千多筆資料的時候 ... ListBox的東西(字串)就消失了 >.<
ppippenkimo
一般會員


發表:7
回覆:17
積分:4
註冊:2003-11-15

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-05-04 21:34:43 IP:211.23.xxx.xxx 未訂閱
您好! 盯著ListBox看,跑到三千多筆資料的時候 ... ListBox的東西(字串)就消失了 >.< 發表人 - ppippenkimo 於 2004/05/04 21:35:16
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-05-05 02:24:51 IP:211.76.xxx.xxx 未訂閱
引言: 您好! 盯著ListBox看,跑到三千多筆資料的時候 ... ListBox的東西(字串)就消失了 >.<
 
你好:
   我測式的結果,發現當ListBox1->Items->Strings[0]的長度大於65535時,
就會無法顯示。但是ListBox1->Items->Strings[0]的字串還是存在的。
   推論應該是顯示上的問題。可能當初設計TListBox的人,沒想到會有人放入超過長度65535(unsigned int)的字串吧...(老實說,這麼長…後面也都看不到了)
   所以只能限制一下,不要讓顯示的字串超過一定長度吧~    
ppippenkimo
一般會員


發表:7
回覆:17
積分:4
註冊:2003-11-15

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-05-05 07:03:45 IP:61.228.xxx.xxx 未訂閱
感謝 anpino大哥 , pwipwi大哥 的幫忙! ^___^
系統時間:2024-11-25 1:43:16
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!