Saisir un entier dans une

Résolu
sewahass Messages postés 12 Date d'inscription lundi 17 septembre 2007 Statut Membre Dernière intervention 27 octobre 2007 - 1 oct. 2007 à 16:44
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 1 oct. 2007 à 19:15
salut
comment faire pour verifier la saisie d'un entier et non d'autre chose dans une edit box?
j'ai utilisé atoi mais elle ne pred que le debut de la chaine
merci d'avance

4 réponses

luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
1 oct. 2007 à 16:52
#include <sstream>
...
char lEntry[] = "14,e5zaer";
int lValue = 0;

std::istringstream iss(lEntry);

if ((iss >> lValue) && (iss.eof()))
    //conversion réussi
else
    //echec (Ici c'est le cas, car il y a des caractères apres 14).
3
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
1 oct. 2007 à 17:07
Regarde du coté de l'API GetDlgItemInt(...)

Shell
0
cs_juju12 Messages postés 966 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 4 mars 2010 4
1 oct. 2007 à 18:42
Si ca t'intéresse tu peux aussi créer l'edit avec style ES_NUMBER, ou le changer avec SetWindowLongPtr.
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
1 oct. 2007 à 19:15
ES_NUMBER ne suffira pas, ça ne controle que les events clavier. Ajouter un sous classement minimal pour empecher ou filtrer les WM_PASTE.

ciao...
BruNews, MVP VC++
0
Rejoignez-nous