Hi,
I have an OnBeforeChangePage procedure that works as follows:
procedure TMain.TMSFNCPageControl1BeforeChangePage(Sender: TObject;
ACurrentPageIndex, ANewPageIndex: Integer; var ACanChange: Boolean);
var
mr:TModalResult;
begin
mr:=await(MessageDlgAsync('Change page?', mtInformation, [mbNo, mbYes]));
if mr=mrNo then
ACanChange:=False
else
ACanChange:=True;
end;
and an OnChangePage event:
procedure TMain.TMSFNCPageControl1ChangePage(Sender: TObject;
APreviousPageIndex, ACurrentPageIndex: Integer);
begin
*do_something()*
end;
The OnChangePage event fires before the OnBeforeChangePage can finish, seemingly ignoring the await(). I've tried several different async routines and the behaviour happens every time.
Thanks!