0
我試圖讓我的應用程序將焦點更改爲鼠標懸停發生的任何其他窗口。我試圖實現一些拖放功能,並且所有似乎缺少的功能都是隨着鼠標將我的應用程序移動到另一個應用程序而改變。將焦點轉移到另一個程序Windows API
這是我目前的測試功能(我做它WM_MOUSEMOVE在主回調prcedure現在的笑)
case WM_MOUSEMOVE:
{
POINT pt;
GetCursorPos(&pt);
HWND newHwnd = WindowFromPoint(pt);
if (newHwnd != g_hSelectedWindow)
{
cout << "changing windows" << endl;
cout << SetWindowPos(newHwnd, HWND_TOP, 0,0,0,0, SWP_NOMOVE|SWP_NOSIZE) << endl;
g_hSelectedWindow = newHwnd;
}
CallWindowProc(listproc, hwnd,message,wParam,lParam);
break;
}
我嘗試使用AllowSetForegroundWindow但它有助於在給定的範圍,它無法找到它,但我已包括在內。
任何幫助或建議,將不勝感激。
我也試過。沒有工作:( – user1853098
你遇到的問題是,WindowFromPoint可能會返回一個窗口,不能成爲前景(即頂級窗口的子窗口)。我已經用一對函數更新了我的帖子,你可以使用。 –
非常感謝,Nik!今天我會嘗試一下:D – user1853098