Bonjour,
Dans une EditBox mon utilisateur doit rentrer un float ( avec virgule ou point, je ne sais pas si c'est important ou pas)
Je dois ensuite récupérer le float , et l'utiliser.
J'ai compris que si je voulais utiliser la fonction ES_NUMBER pour une edit box je en pourrais avoir que des entiers et qu'il faut donc que je cherche du texte, puis que je le convertisse en float..
Voici mon code...
je ne sais pas si mon return est utile ou non...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 case WM_INITDIALOG: { SetDlgItemInt(hDlg,IDC_stromf_val,valeur1,NULL); SetDlgItemText(hDlg,IDC_charg_val ,val2); SetDlgItemText(hDlg,IDC_pause_val,val3); return TRUE; } case WM_COMMAND: if (LOWORD(wParam) == IDC_okval) { valeur1 = GetDlgItemInt(hDlg, IDC_stromf_val, 0, 0); GetDlgItemText(hDlg, IDC_charg_val, val2, 0); GetDlgItemText(hDlg, IDC_pause_val, val3, 0); valeur2= atof(val2); valeur3= atof(val3); EndDialog(hDlg,0); DialogBox(hinst, "DIALOG5" ,hwnd, (DLGPROC)DlgprocessProc); return (valeur1,valeur2,valeur3); }
Dans ma definition de variables j'ecris:
et en fait mon programme prend en compte les char "1.5" et "6.5" qui me servent a initialiser mes edit box... et non les valeurs que pourrais rentrer l'utilisateur...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 char* val2= "1.5"; char* val3="6.5"; int valeur1=3; double valeur2; double valeur3;
![]()
Partager