Bonjour,
J'ai une fenetre fille sur laquelle je voudrais cliquer. Mais voil� le click ne fonctionne que sur la fenetre parent
merci et � bient�t
Version imprimable
Bonjour,
J'ai une fenetre fille sur laquelle je voudrais cliquer. Mais voil� le click ne fonctionne que sur la fenetre parent
merci et � bient�t
bonjour ,
euh �a manque un peu de precisions non ?
le type des fenetres en jeux etc...
:D
Bonjour,
En fait � partir d'un monitoring video sur une clientArea de 800*600 j'ai cr�� une classe Photo representant une fen�tre fille de 360*291 soit a peu pres 1/4 de ma fenetre parent, le but �tant de cr�er 4 fen�tres filles.
Donc je cherche � savoir comment je peux fermer la fen�tre fille en videolive en cliquant dessus.
@+ merci
il s'agit en fait de fen�tre hWnd
@+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 hWnd = CreateWindow("WinUraWC", "WinUra", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hIns, NULL); ShowWindow(hWnd, nCmdShow); UpdateWindow(hWnd); if (!Photo0.Create(hIns, hWnd)) return 0; if (!Init(Photo0.hWnd)) return 0; ForceClientAreaSize(hWnd, 720, 578); hAccel = LoadAccelerators(hInst, MAKEINTRESOURCE(IDC_WinUra)); SetTimer(hWnd, 0, 1000, NULL); while(GetMessage(&msg, NULL, 0, 0)) { if ((hAccel == NULL) || !TranslateAccelerator(hWnd, hAccel, &msg)) { TranslateMessage(&msg); DispatchMessage(&msg); } } trace("Sortie de la boucle des messages\n"); Term(Photo0.hWnd); return msg.wParam; }
et bien il faut travailler dans la callback de la fenetre, que tu as d�fini lors du RegisterClass
pas d'erreur � la compil et pourtant :?:
�iao[/b]Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 LRESULT CALLBACK WinPhotoProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { switch( message ) case WM_COMMAND: switch( wParam ) { case WM_LBUTTONDOWN: trace("Terminaison\n"); UranieStopMonitoring(hUranie, hWnd); [color=orange]Ca le fait pas[/color] return 0; default: break; } return DefWindowProc( hWnd, message, wParam, lParam ); }
de tete, je dirais qu'il faut traiter le WM_LBUTTONDOWN comme un message, et non comme un wParam, c'est � dire au meme titre que ton WM_COMMAND
cad comme ��
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 LRESULT CALLBACK WinPhotoProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { switch( message ) case WM_COMMAND: switch(LOWORD(wParam)) g modifié comme cà { case WM_LBUTTONDOWN: trace("Terminaison\n"); UranieStopMonitoring(hUranie, hWnd); ca le fait tjs pas return 0; default: break; } return DefWindowProc( hWnd, message, wParam, lParam ); }[color=orange][/color]
g capt� ton msg, g corrig� comme ceci mais :(
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 LRESULT CALLBACK WinPhotoProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { switch( message ) case WM_COMMAND: switch(message) <---- { case WM_LBUTTONDOWN: trace("Terminaison\n"); UranieStopMonitoring(hUranie, hWnd); return 0; default: break; } return DefWindowProc( hWnd, message, wParam, lParam ); }
voici la def de la fen�tre client, ne fo til pas rajouter une option mouse dans le CreateWindow
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 bool CPhoto::Create(HINSTANCE hInst, HWND hParent) { if (hWnd != NULL) return false; hParentWnd = hParent; hWnd = CreateWindow("Photo", "", WS_CHILD | WS_BORDER, 0, 0, 360, 291, hParentWnd, NULL, hInst, NULL); if (hWnd != NULL) ShowWindow(hWnd, SW_SHOW); return (hWnd != NULL); }
plutot un truc du genreCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 LRESULT CALLBACK WinPhotoProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { switch( message ) { case WM_COMMAND: // ... break; case WM_LBUTTONDOWN: trace("Terminaison\n"); UranieStopMonitoring(hUranie, hWnd); return 0; } return DefWindowProc( hWnd, message, wParam, lParam ); }
excellent :D
merci bcp
@+