kyript
Messages postés
346
Date d'inscription
jeudi 7 avril 2005
Statut
Membre
Dernière intervention
26 mars 2012
26 juil. 2005 à 23:33
bon je te laisse tou le programme car la je suis un peu perdu
car sur un programme que j'ai dans le meme style ben le processus ce ferme bien
voila le code
LRESULT CALLBACK WindowProc(HWND hWnd, UINT messages, WPARAM wParam, LPARAM lParam)
{
HDC hDc; //handle sur le device context
RECT rc; // on créer un objert de la structure rect;
PAINTSTRUCT ps; // On Déclare un objet de structure PAINTSTRUCT, qui va nous servir
// à contenir les informations pour l'écriture dans le
// contexte d'affichage.
switch (messages)
{
case WM_CREATE:
{
hCouleur = CreateSolidBrush(RGB(255,255,255)); // blanc
Police = "Arial";
break;
}
case WM_PAINT:
{
hDc = BeginPaint(hWnd, &ps);
GetClientRect(hWnd, &rc);
SetBkMode(hDc, TRANSPARENT);
SetBkColor(hDc,0x00FFFF00); // Bleu
SetTextColor(hDc, 0x000000FF); // rouge
HFONT MaPolice; // On déclare un handle sur une fonte.
MaPolice = CreateFont(nHauteur_Caractere,nLargeur_Caractere,
nOrientation_Caractere,0,
500,false,false,false,0,
OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS,
DEFAULT_QUALITY,DEFAULT_PITCH | FF_DONTCARE,
Police_Utile);
SelectObject(hDc, MaPolice);
SetTextColor(hDc, 0x005C03BE);
DrawText(hDc, "Bienvenue sur le serveur. v1.0", -1, &rc,
DT_SINGLELINE|DT_LEFT |DT_TOP);
DeleteObject(MaPolice);
EndPaint(hWnd, &ps);
break;
}
case WM_COMMAND:
{
switch (LOWORD(wParam))
{
case IDM_VEILLE:
{
SendMessage(hWnd,WM_SYSCOMMAND,SC_SCREENSAVE,0);
break;
}
case IDM_QUITTER:
{
int quit = 0; // Pour récupérer la réponse de l'utilisateur.
quit = MessageBox(hWnd,"Vous voulez réellement Quitter",
szClassName,MB_YESNO|MB_ICONQUESTION);
if (quit == IDNO)
{
return 0;
break;
}
else
{
SendMessage( hWnd, WM_CLOSE, 0, 0L);
break;
}
break;
}
break;
} // fin switch
} // WS_COMMAND
case WM_SYSCOMMAND :
{
switch (wParam)
{
case SC_CLOSE : // cas d'un click sur la croix de fermeture
{
int quit = 0;
quit = MessageBox(hWnd,"Vous voulez réellement Quitter",
szClassName,MB_YESNO|MB_ICONQUESTION);
if (quit == IDNO) {return 0; break;}
SendMessage( hWnd, WM_CLOSE, 0, 0);
break;
} // fin case SC_CLOSE
default : // on renvoie tous les autres messages système à
// windows selon la procédure normale.
{return DefWindowProc (hWnd, messages, wParam, lParam);break;}
}// fin switch (wParam)
break;
}
case WM_CLOSE: // -------------------------------------------------------
{
DestroyMenu(hMenu);
DestroyWindow( hWnd );
break;
} // fin case WM_CLOSE --------------------------------------------------
case WM_DESTROY:
{
PostQuitMessage (0); // (Voir partie 1)
break;
} // fin case WM_DESTROY ----------------------------------------------
default: // (Voir partie 1)
return DefWindowProc (hWnd, messages, wParam, lParam);
break;
} //fin de switch
return 0;
}