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

兩者有何不同?

答題得分者是:Mickey
breeze_1
一般會員


發表:33
回覆:72
積分:21
註冊:2003-05-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-11-08 09:25:37 IP:202.104.xxx.xxx 未訂閱
Session.GetStoredProcNames('aa',mystringlist); listbox1.items:=mystringlist; 'aa'為databasename; listbox1.itmes顯示了所有的storeprocname; listbox2.items:=listbox1.items; 和 for i:=0 to listbox1.items.count-1 do begin listbox2.items[i]:=listbox1.items[i]; end; 有什麽區別?爲什麽會顯示index out of bound(0)?
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-11-08 10:58:08 IP:218.32.xxx.xxx 未訂閱
breeze_1 你好: listbox1.items:=mystringlist; 是將 listbox1.items 的指標(Pointer) 指向 mystringlist, 也就是說, mystringlist 與 listbox1.items 是用相 同的位址, 一但 mystringlist.free, 則listbox1.items 內容也被釋放掉, 而且 listbox1.items 原先若有內容, 則其所佔用的記憶體空間, 可能從此 流失掉, 所以這是很危險的寫法. 應該改用 listbox1.item.addstrings(mystringlist); 相同的, listbox2.items:=listbox1.items 也是不妥當的寫法. for i:=0 to listbox1.items.count-1 do begin listbox2.items[i]:=listbox1.items[i]; 這樣一個一個 item 抄寫也行, 只是程式有點冗長. 發表人 - Mickey 於 2003/11/08 11:06:37
breeze_1
一般會員


發表:33
回覆:72
積分:21
註冊:2003-05-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-11-08 11:17:04 IP:202.104.xxx.xxx 未訂閱
MICKEY你好 這是DELPHI的HELP EXAMPLE MyStringList := TStringList.Create; try Session.GetStoredProcNames('IB_EMPLOYEE', MyStringList); { fill a list box with stored procedure names for the user to select from } ListBox1.Items := MyStringList; finally MyStringList.Free; end;
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-11-08 12:11:00 IP:218.32.xxx.xxx 未訂閱
引言: listbox2.items:=listbox1.items; 和 for i:=0 to listbox1.items.count-1 do begin listbox2.items[i]:=listbox1.items[i]; end; 有什麽區別?爲什麽會顯示index out of bound(0)?
breeze_1 你好: 如果你認為那是好的寫法, 那就好, 我沒有其他意見. 如果你只是想解決問題 listbox2.items[i]:=listbox1.items[i]; 改成 listbox2.items.add(listbox1.items[i]); 因為 Loop 開始時 listbox2.items.count 仍為 0.
breeze_1
一般會員


發表:33
回覆:72
積分:21
註冊:2003-05-26

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