在一个程序中,怎么得到自己的那个窗口是激活的?如果 这个程序中的Form已经Show了,
但是这个时候 用户 点开了IE,焦点变到IE里面去了,那么这个情况能不能得到
我这个程序的最后激活的Form对象??

解决方案 »

  1.   

    用全局变量在每个Formshow后记录其Form名不就行了吗!
      

  2.   

    直接使用全局的Screen对象,利用这个对象的ActiveForm属性就可以了,如下:procedure GetActiveForm;
    begin
      if Screen.ActiveForm=TheFormYourCreated then
        SomeCode;
    end;
      

  3.   

    要么设标记自己记下来,要么
    ShowModal
      

  4.   

    使用最上窗口!!!
        函数功能:该函数检查与特定父窗口相联的子窗口z序,并返回在z序顶部的子窗口的句柄。
        函数原型:HWND GetTopWindow(HWND hWnd);
        参数:
        hWnd:被查序的父窗口的句柄。如果该参数为NULL,函数返回Z序顶部的窗口句柄。
        返回值;如果函数成功,返回值为在Z序顶部的子窗口句柄。如果指定的窗口无子窗口,返回值为NULL。
        若想获得更多错误信息,请调用GetLastError函数。
        速查:Windows NT:3.1以上版本;Windows:95以上版本:Windows CE:不支持;头文件:Winuser.h:库文件;user32.lib。
      

  5.   

    支持 FrameSniper(寻找告别单身的机会!) 
    对!!