Delphi 10.4 FMX(虽然我确信这是一个一般的 Delphi 问题)
我的对话窗口正在读取一个大文件。
AssignFile(theFile, OpenDialog1.FileName);
Reset(theFile);
while not EOF(theFile) and not CancelButtonPressed do
begin
ReadLn(theFile, theLine);
Label1.Text := theLine;
ProgressBar1.Value := PercentageOfFileRead;
// Application.ProcessMessages;
end;
CloseFile(theFile);
如果没有 Application.ProcessMessages,则永远不会绘制 Label 和 ProgressBar。我不认为 Application.ProcessMessages 是最好的方法,因为它在几千次调用后往往会崩溃。
在这样的批处理过程中重新绘制组件的最佳实践是什么?