Bonjour,
je cherche à inserer dans une zone d'une fenetre, une autre fenetre avec scrollbar.
sauf que, j'ai des resultats bizarres :
---------
LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HWND hBuffer, hBuffer2;
switch (message) /* handle the messages */
{
case WM_CREATE:
hBuffer = CreateWindowEx (
0,
szClassName,
"Test",
WS_VISIBLE | WS_CHILD | WS_VSCROLL,
50,
50,
300,
200,
hwnd,
NULL,
hInst,
NULL
);
hBuffer2 = CreateWindow(
"Edit",
TEXT(""),
WS_CHILD|WS_VISIBLE|WS_BORDER|ES_CENTER ,
1,
20,
100,
20,
hBuffer,
(HMENU)(1002),
hInst,
NULL);
break;
case WM_DESTROY:
PostQuitMessage (0); /* send a WM_QUIT to the message queue */
break;
default: /* for messages that we don't deal with */
return DefWindowProc (hwnd, message, wParam, lParam);
}
return 0;
}
---------
le reste étant simplement la creation de la fenetre principale avec attachement à cette methode...
avec ce code, j'ai ma fenetre principale, une fenetre avec scrollbar incluse dans la principale
et 4 objets "edit"
1) deja, pourquoi 4 ? (le 4 semble dépendre de la taille de la fenetre hbuffer)
et pourquoi sont-ils en "cascade" ?
2) si je fait un setwindowlong sur hbuffer
et que dans le wm_create, je cree le hbuffer2, là le champ edit ne se crée pas

d'où vient le problème ?
merci
PS : je developpe avec Devcpp