请告诉我:如何知道 TEvent 是否已发出信号?
单击停止按钮 =SetEvent(Events[1]);
我正在尝试解压缩档案,如果按下停止按钮,则必须终止踏板并且必须中止解压缩。
我的代码:
procedure TForm2.ZipForge1OverallProgress(Sender: TObject; Progress: Double;
Operation: TZFProcessOperation; ProgressPhase: TZFProgressPhase;
var Cancel: Boolean);
begin
if Events[1]<>null then
begin
ThreadUpdating.Terminate;
Abort;
end else
form2.Update_ProgressBar.Position := Trunc(Progress);
end;
但是如果我按下 STOP-button(SetEvent(Events[1])) 什么都不会发生。
PS:我WaitForMultipleObjects(Event[1],Event[2])
在一个线程中使用。事件 [1] 分两部分用作 STOP 信号:inZipForge1OverallProgress
和WaitForMultipleObjects
。