MDIメインウィンドウ内に子ウィンドウを作成しようとしています...メインウィンドウのサイズは1024x768です...CreateWindowEx()を使用して子ウィンドウを作成しようとすると、サイズが何らかの形でオフセットされているようです...言い換えると、1024 x 768の子ウィンドウはその親よりも小さいです...この違いをどのように説明できますか?メインウィンドウのハンドルでGetCLientRect()を使用すると、サイズはさらに小さくなります...子ウィンドウを同じサイズにする必要はありません。子ウィンドウに、750x563の画像の正確なサイズを含める必要があります。CreateWindowEx()のパラメーター内でそのサイズを設定すると、子ウィンドウが小さすぎます...
MainWndProc内で子ウィンドウを作成するために使用するコードは次のとおりです。
LRESULT CALLBACK MainWndProc(HWND hWnd, UINT Msg,
WPARAM wParam, LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
switch(Msg)
{
case WM_CREATE:
{
//OnCreate(hWnd, NULL);
CLIENTCREATESTRUCT ccs;
ccs.hWindowMenu = GetSubMenu(GetMenu(hWnd), 2);
ccs.idFirstChild = StartChildrenNo;
hWndChildFrame = CreateWindowEx(WS_EX_CLIENTEDGE,
L"MDICLIENT",
NULL,
WS_CHILD | WS_CLIPCHILDREN | WS_VSCROLL
| WS_HSCROLL | WS_VISIBLE,
0,
0,
1024,
768,
hWnd,
(HMENU)IDM_FILE_NEW,
GetModuleHandle(NULL),
(LPVOID)&ccs);
if(hWndChildFrame == NULL)
MessageBox(hWnd, L"Could not create MDI client.", L"Error", MB_OK | MB_ICONERROR);
CreateNewMDIChild(hWndChildFrame);
return 0;
}
...}