Bonjour,
Je debute en programmation d'interface graphique et j'ai voulu réaliser
un petit programme pour calculer le module d'un nombre complexe.
Voici mon probleme:
J'utilise l'API Win32 pour faire une boite de dialogue contenant trois
contrôles Edit: un pour la partie réelle , un pour la partie imaginaire
et le troisieme pour afficher le resultat après calcul.
Voici la portion de code problématique:
LRESULT CALLBACK MainProc(HWND Dlg,UINT message,WPARAM wParam,LPARAM lParam)
{
int Select;
int entier1=GetDlgItemInt(Dlg, IDC_ENTIER1, NULL, FALSE);
int entier2=GetDlgItemInt(Dlg, IDC_ENTIER2, NULL, FALSE);
float resultat= sqrt(pow(entier1,2) + pow(entier2,2));
switch(message)
{
case WM_COMMAND:
Select=LOWORD(wParam);
switch(Select)
{
case IDCALCULER:
SetDlgItemInt(Dlg, IDC_RESULTAT, resultat, false);
return TRUE;
case IDQUITTER:
EndDialog(Dlg,Select);
PostQuitMessage(0);
return TRUE;
}
default:
return FALSE;
}
}
Le probleme est le suivant : La variable resultat est de type float or
dans mon code comme vous avez pu le constater SetDlgItemInt() sert à
afficher dans l'Edit du resultat un entier, ma question est : Quelle
fonction dois-je utiliser pour afficher un nombre décimal (float) ?