TStringList的使用問題? |
答題得分者是:wameng
|
chrislao
初階會員 發表:86 回覆:69 積分:36 註冊:2002-12-28 發送簡訊給我 |
unit Unit1; interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls; type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end; var
Form1: TForm1;
numlist:tstringlist; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject);
var
i:integer;
begin
numlist:=tstringlist.Create;
for i:=1 to 11 do
numlist.Add(inttostr(i));
end; procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
if numlist.Find(edit1.Text,i) then
showmessage(inttostr(i))
else
showmessage('not find');
end; end. 運行上述的程式,在edit1內輸入1至9都可以找到它的index,但輸入10或者11就找不到,請問為甚麼呢?
|
Fishman
尊榮會員 發表:120 回覆:1949 積分:2163 註冊:2006-10-28 發送簡訊給我 |
Hi chrislao, 請更改為
procedure TForm1.FormCreate(Sender: TObject); var i:integer; begin NumList := TStringList.Create; for i:=1 to 11 do NumList.Add(IntToStr(i)); NumList.Sort; end;因為:Find will only work on sorted lists!(詳見Delphi 的 Help) ---------------------------------- 小弟才疏學淺,若有謬誤尚請不吝指教 ----------------------------------
------
Fishman |
chrislao
初階會員 發表:86 回覆:69 積分:36 註冊:2002-12-28 發送簡訊給我 |
|
wameng
版主 發表:31 回覆:1336 積分:1188 註冊:2004-09-16 發送簡訊給我 |
|
ha0009
版主 發表:16 回覆:507 積分:639 註冊:2002-03-16 發送簡訊給我 |
|
chrislao
初階會員 發表:86 回覆:69 積分:36 註冊:2002-12-28 發送簡訊給我 |
|
cancer
高階會員 發表:58 回覆:319 積分:190 註冊:2004-07-31 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |