钱达智的笔记(96.7-96.10)的文章也介绍了<br>使用SetForegroundWindow(),我用了还是不行<br><br>//接受消息恢复<br>procedure TfrINPUT.MMessage(var Msg:Tmsg;Var handled:Boolean );<br>var<br> hww:HWND;<br> p1:TPOINT;<br> bb:integer;<br>begin<br> bb:= DefWindowProc(handle,WM_NCHITTEST,0,GetMessagePos); //判断鼠标接触了Form的边缘<br> if(Fcat=1)and(bb=18) then <br> begin<br> frINPUT.left:=fcleft; //恢复原始位置<br> <br> // GetCursorPos(p1);//取得鼠标的位置 <br> // Hww := WindowFromPoint(p1 );//取得鼠标所在窗口的句柄 <br><br> // hww:=FindWindow('TFrINPUT','AINPUT'); //取得窗口的句柄<br><br> // SetActiveWindow(hww); //测试不能激活<br> // SendMessage(Application.Handle,CM_ACTIVATE,0,0); //测试不能激活<br> // SetForegroundWindow(hww); //还是不能激活<br> // SetForegroundWindow(Application.Handle); //还是不能激活<br> SetForegroundWindow(frINPUT.Handle); //还是不能激活 气死我了:-((( <br> <br> fcat:=0 //全局变量(表示已恢复)<br> end;<br> <br>end;<br><br>请大师号脉诊断,谢谢!!!!!!!!