Creation d'un message dans une dll non MFC
Bonjour tout le monde,
j'ai un petit soucis, j'ai une fenetre avec un message dedans, mais je ne suis pas sur d'avoir fait les choses comme il le faut, car quand je souhaite déplacer le zone d'edit dans la fenêtre, cela ne fonctionne pas :cry:
donc, j'ai créé la fenetre principal avec null comme handle.
puis la zone d'edit avec le handle que j'ai reçu dans ma fonction gérant les messages... c'est bon ?
quelqu'un peut m'éclairer please... (je précise que je suis en dll non MFC)
voici le code que j'ai fais, en résumé...:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
*** dans la fonction principale de la DLL:
this->hInstance = GetModuleHandle(NULL);
WNDCLASS wc;
wc.style = 0 ;
wc.lpfnWndProc = pFonction;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = NULL;
wc.hIcon = NULL;
wc.hCursor = NULL;
wc.hbrBackground = NULL;
wc.lpszMenuName = NULL;
wc.lpszClassName = pClassName;
// enregistre la fenêtre d'attente
if(!RegisterClass(&wc)) return( false );
// création de la fenêtre
this->hWindows = CreateWindow( pClassName, CST_FEN_TITRE, WS_BORDER | WS_POPUP | WS_VISIBLE,
x, y, width, height, NULL, NULL, this->hInstance, NULL );
if (!this->hWindows) return( false );
// affichage de la fenêtre d'attente
ShowWindow(this->hWindows, SW_SHOW);
*** dans le message WM_CREATE:
this->hParent = hwnd (passé à la fonction MainWndProc (pFonction), contenant le "switch case" des messages)
// création d'un message simple
this->hMess = CreateWindow(_T("edit"), _T(""),
WS_CHILD | WS_VISIBLE | ES_WANTRETURN | ES_MULTILINE | ES_READONLY | ES_CENTER,
0, 30, this->width, this->height-30, this->hParent, NULL, this->hInstance, NULL); |
le message n'est pas décalé de 30 pixel vers le bas... il est toujours au plus haut dans la fenêtre...
merci des infos ! :roll: