Win32API質問箱 Build63
■ このスレッドは過去ログ倉庫に格納されています
0030デフォルトの名無しさん
2008/03/04(火) 18:53:13std::map<HWND, pUBaseWindow> WndToPointer;
/*******************************************************************************/
// ウインドプロシージャ
LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
LPCREATESTRUCT lpcs;
pUBaseWindow pWindow = WndToPointer[hwnd];
if (!pWindow){
if (msg == WM_CREATE){
lpcs = (LPCREATESTRUCT)lParam;
pWindow = (pUBaseWindow)lpcs->lpCreateParams;
pWindow->SetHandle(hwnd);
WndToPointer[hwnd] = pWindow;
} else {
return ::DefWindowProc(hwnd, msg, wParam, lParam); // この部分が::DefFrameProcになる
}
}
if (msg == WM_DESTROY){
WndToPointer.erase(hwnd);
}
return pWindow->WndProc(msg, wParam, lParam);
}
こんな感じっす
■ このスレッドは過去ログ倉庫に格納されています