2012-04-06 17 views
0

ウィンドウの作成方法は次のとおりです。しかし、GetClientRectを使用すると、rcClientは32x32よりはるかに大きくなります。Windowsで小さなウィンドウ(32x32)を作成するには?

int nDefaultWidth = 32; 
int nDefaultHeight = 32; 

UINT32 winStyle = 0; 

RECT rc; 
SetRect(&rc, 0, 0, nDefaultWidth, nDefaultHeight); 
AdjustWindowRect(&rc, winStyle, (hMenu != NULL) ? true : false); 


// Create the render window 
HWND hWnd = CreateWindow(L"Direct3DWindowClass", NULL, winStyle, 
          x, y, (rc.right - rc.left), (rc.bottom - rc.top), 0, 
          hMenu, hInstance, 0); 

RECT rcClient; 
GetClientRect(hWnd, &rcClient); 

答えて

2

あなたはAdjustWindowRectからdwStyleパラメータとして0を渡しています。その値はWS_OVERLAPPEDに等しく、AdjustWindowRectは明示的にその特定の値を渡すことを禁じます。

あなたは(すなわち、まったくクロム、純粋なクライアント領域で)32×32のウィンドウを作成したいので、あなたはそれがすべてでは目的を達成しませんようAdjustWindowRectコールを失い、CreateWindowにウィンドウスタイルとしてWS_POPUPを渡す必要があります。

関連する問題