用VC生成一个应用程序,一运行后,会在任务栏上有一个停靠的区域,那个区域显示图标和主窗口主题,请问如何获取这个区域的坐标?

解决方案 »

  1.   

    用SPY++查看任务栏的类名和窗口名, 再在里的程序里用FindWindow(Ex)获取任务栏句柄,然后通过GetWindowRect计算出坐标
      

  2.   

    貌似只能得到任务栏的区域坐标
    HWND hWnd = ::FindWindow(_T("Shell_TrayWnd"), NULL);
    if(hWnd)
    {
     RECT rc;
     ::GetWindowRect(hWnd, &rc);
    }
      

  3.   

    其实我想在OnActiveApp 事件里判断出是由于用户点击任务栏上的图标才激活的窗口,还是其他方式激活的窗口,我只是想做判断!
      

  4.   

    你点击任务栏上的应用程序图标会发送WM_ACTIVATE和WM_ACTIVATEAPP消息,你用Spy++看看就清楚了
      

  5.   

    任务栏就是一个toolbar,可以findwindow找到该句柄,有了句柄,什么都好办了。