クライアント領域を掴んでウィンドウを移動するには、メッセージ WM_NCHITTEST を処理する時にクライアント領域をキャプションとして扱えばよい。 例: // クライアント領域を掴んでウィンドウを移動する例です。 LRESULT APIENTRY WindowProc( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ) { // UINT uMsg; はウィンドウに送られてきたメッセージの値 switch( uMsg ) { case WM_NCHITTEST: { // クライアント領域をキャプションとして扱う LRESULT lResult = DefWindowProc( hWnd, uMsg, wParam, lParam ); // カーソル位置判定 return (HTCLIENT==lResult) ? HTCAPTION : lResult; } …… 省略 …… }//WindowProc 関連 | |