В приложении FireMonkey (Delphi XE3) происходит следующее. Посмотрите на следующий код (это просто фиктивный пример, чтобы проиллюстрировать проблему):
procedure TForm1.Button4Click(Sender: TObject);
var
i: Integer;
begin
Button4.Enabled:= false; //This should gray-out the button
// get busy for some time
for I := 0 to 100000000000 do
begin
end;
Button4.Enabled:= true;
end;
Я ожидал, что Button4 станет неактивным перед входом в занятую операцию, представленную циклом «for». Тем не менее, это не так.
К концу выполнения обработчика OnClick кнопка «как бы не реагирует» на Button4.Enabled:= false. Почему?
Как я могу обойти это?
Это прекрасно работает в VCL.
Спасибо.