我创建了一个通用线程类来控制一个进程表单,它在线程的构造函数中注入并设置为_progressForm.在Execute方法中,线程初始化表单并使用ShowModal()函数显示它,如下所示:
procedure TProgressThread.Execute;
begin
...
ShowForm;
end;
procedure TProgressThread.ShowForm;
begin
if Assigned(_progressForm) then
begin
Synchronize(
procedure
begin
_progressForm.ShowModal();
end);
end;
end;
Run Code Online (Sandbox Code Playgroud)
我无法理解的是为什么我的线程被锁定在Synchronize?在关闭进度表单之前,它不会返回.ShowModal不应该只锁定主线程吗?
delphi ×1