delphi关于激活窗口的有关问题

delphi关于激活窗口的问题
procedure TForm1.Timer1Timer(Sender: TObject);
begin

  //setforegroundwindow(GetLastActivePopup(myHandle1));
  //showwindow(gameshandle[0],SW_SHOWNOACTIVATE);
  setforegroundwindow(noteHandle1);
  sleep(3000);
   
  setforegroundwindow(noteHandle2);
  sleep(3000);
end;


这个功能是在2个记事本窗口不断切换
然后在切换过后的sleep(3000)时间内按键盘的任意键,切换就不在继续了,其中一个记事本就一直处于激活状态,第二个记事本一直不能激活,这是什么原因


------解决方案--------------------
加上
application.ProcessMessages;