在一个程序中有另一个程序的窗口句柄,也就是一种跨进程的控制。
我使用SetWindowPos使窗口最小化,对某些窗口类有效,但是有些窗口无效,
但是使用鼠标的可编程控制键就可以最小化绝大部分的窗口,是否有专门的函数呢?

解决方案 »

  1.   

    ShowWindow(hWnd, SW_MINIMIZE)
    ShowWindow(hWnd, SW_RESTORE)
      

  2.   

    ShowWindow(SW_SHOWMINIMIZED);//最小话
    ShowWindow(SW_SHOWMAXIMIZED);//最大化
    ShowWindow(SW_RESTORE);//恢复
      

  3.   

    SendMessage( hWnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0 );
    SendMessage( hWnd, WM_SYSCOMMAND, SC_MINIMIZE, 0 );
    SendMessage( hWnd, WM_SYSCOMMAND, SC_RESTORE, 0 );......
      

  4.   

    sendmessage无效,showwindow与setwindowpos效果类似,
    其实我试验无效的窗口是realplayer8的程序窗口,无法用showwindow或setwindowpos最小化,
    但是用鼠标的中键可以最小化(不是按最小化那个按钮,是鼠标的程序最小化了窗口),
    大家可以试一试,
      

  5.   

    sorry,sendmessage我试的是wm_showwindow,没有试wm_syscommand,也许可行,
      

  6.   

    谢谢各位,下面方法我试了可行,
    PostMessage( hWnd, WM_SYSCOMMAND, SC_MAXIMIZE, 0 );
    PostMessage( hWnd, WM_SYSCOMMAND, SC_MINIMIZE, 0 );
    PostMessage( hWnd, WM_SYSCOMMAND, SC_RESTORE, 0 );