0
我是新的TAniindicator組件,因此出於測試目的,我已經將一個項目放在一起,這個項目將構建listview並在listview構建時顯示/旋轉Aniicicator。TAniIndicator不旋轉 - 加載tlistview
type
TLoadThread = class(TThread)
public
constructor Create; reintroduce;
protected
procedure Process;
procedure Execute; override;
end;
constructor TLoadThread.Create;
begin
inherited Create(True);
FreeOnTerminate := True;
end;
procedure TLoadThread.Process;
begin
Form1.BuildListView;
end;
procedure TLoadThread.Execute;
begin
inherited;
FreeOnTerminate := True;
Synchronize(Process);
end;
var _loadThread : TLoadThread;
procedure TForm1.ThreadTerminated(Sender: TObject);
begin
AniIndicator1.Enabled := False;
AniIndicator1.Visible := False;
end;
procedure TForm1.BuildListView;
var i : integer;
LI : TListViewItem;
begin
Listview1.BeginUpdate;
try
for i := 1 to 2000 do
begin
LI := Listview1.Items.Add;
LI.Text := 'Listview Item ' + IntToStr(i);
end;
finally
Listview1.EndUpdate;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
AniIndicator1.Visible := False;
_loadThread := nil;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
_loadThread := TLoadThread.Create;
_loadThread.OnTerminate := ThreadTerminated;
_loadThread.Start;
AniIndicator1.Enabled := True;
end;
我以爲我是在正確的軌道上,但是這似乎並沒有工作,任何人都可以解釋我做錯了什麼嗎?
雷米,非常感謝你的投入,現在它變得更有意義,非常感謝:) –