アプリケーションのフォーカスをマウスオーバーした他のウィンドウに変更しようとしています。いくつかのドラッグ アンド ドロップ機能を実装しようとしていますが、欠けているように見えるのは、マウスがアプリケーションを別のアプリケーションに移動するときのフォーカスの変更だけです。
これが私の現在のテスト機能です(私は笑いのために今メインのコールバック手順でWM_MOUSEMOVEでそれを行います)
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 を使用してみましたが、指定されたスコープで見つけることができませんでしたが、含まれていました。
ヘルプや提案をいただければ幸いです。