scanf "%d" w winapi

niekowalski

Użytkownik
Dołączył
Grudzień 7, 2006
Posty
54
Witam
Jak bedzie wyglądac taka funkcja w winapi a dokładnie chodzi mi o GetWindowText żeby z kontrolki pobrała mi liczbę całkowita i zapisała do zmiennej int . bo pobiera mi to jako char i konwertowanie przez itoa nic mi tutaj nie daje . albo może żle konwertuje :

char text[256];
int text2;
GetWindowText(hEdit,text,256);
itoa(text2,text,1);

Coś źle robie czy poprostu całkiem inaczej należy to zrobić ??
 

D.F.

Były Moderator
Dołączył
Listopad 4, 2009
Posty
493
Jeżeli chcesz pobrać z kontrolki liczbę całkowitą użyj funkcji GetDlgItemInt.

Kod:
UINT GetDlgItemInt(      
    HWND hDlg,
    int nIDDlgItem,
    BOOL *lpTranslated,
    BOOL bSigned
);

Podajesz uchwyt okna, numer ID kontrolki, zmienną na przechowanie informacji czy funkcja się powiodła oraz czy liczba ma być ze znakiem czy bez (True lub False).
 

Klawisz95

Użytkownik
Dołączył
Styczeń 24, 2010
Posty
54
o_O
Też się nad tym zastanawiałem...
A może ktoś jeszcze powie jak przekonwertować zmianną typu char[] na int? :)
Próbowałem na różne sposoby. Między innymi:
atoi(), static_void<int>..., (int)...
I nic z tego nie działało :<
Ehh... W Pascalu to było proste. Po prostu StrToInt (albo StrToIntDef) i było z głowy... :)
 
Ostatnia edycja:

discovery44

Były Moderator
Dołączył
Sierpień 14, 2007
Posty
763
Irytujesz więc gotowca nie dostaniesz.
W pętli dodawaj co każdy obieg wartość int elementu tablicy do obiektu int.
 

grzonu

Były Moderator
Dołączył
Grudzień 26, 2006
Posty
1390
do konwersji char* -> int sluzy atoi() (ascii to int o ile sie nie myle) a int -> char* to itoa() (int to ascii)
 

grzonu

Były Moderator
Dołączył
Grudzień 26, 2006
Posty
1390
no to moze przekazujesz za duza liczbe. Pamietaj ze zakres int nie jest nieskonczenie wielki
 

niekowalski

Użytkownik
Dołączył
Grudzień 7, 2006
Posty
54
Jeżeli chcesz pobrać z kontrolki liczbę całkowitą użyj funkcji GetDlgItemInt.

Kod:
UINT GetDlgItemInt(      
    HWND hDlg,
    int nIDDlgItem,
    BOOL *lpTranslated,
    BOOL bSigned
);

Podajesz uchwyt okna, numer ID kontrolki, zmienną na przechowanie informacji czy funkcja się powiodła oraz czy liczba ma być ze znakiem czy bez (True lub False).

Dzięki . Widziałem tą funkcję szukając rozwiązania w internecie ale jakoś tak nazwą mi się inaczej kojarzyła .
 
Do góry Bottom