Recherche d'entier dans un TEdit [Résolu]

hysteria74 20 Messages postés lundi 13 décembre 2004Date d'inscription 24 juin 2005 Dernière intervention - 24 juin 2005 à 10:31 - Dernière réponse : japee 1792 Messages postés vendredi 27 décembre 2002Date d'inscription 12 novembre 2016 Dernière intervention
- 24 juin 2005 à 19:31
Bonjour,
je besoin d'un ptit conseil car j'ai créé un ptit programme qui va me permettre notamment de saisir des entiers dans un TEdit et j'aurais voulu savoir comment on peut faire une condition pour vérifier si le texte saisi est bien un entier.

Merci d'avance pour vos réponses.
Afficher la suite 

5 réponses

Répondre au sujet
roud59 103 Messages postés jeudi 16 septembre 2004Date d'inscription 26 juillet 2007 Dernière intervention - 24 juin 2005 à 11:22
+3
Utile
1ere solution :
try
entier := StrToInt(Edit1.Text);
except
// N'est pas un entier
end;

2eme solution, si l'entier saisi doit être positif par exemple
entier := StrToIntDef(Edit1.Text, -1);
if Entier = -1 then
FaireQuelqueChoseQuandCEstPasUnEntier;

3eme solution :
function EstEntier(S : string) : bolean;
begin
result := false; if (s '') or (s '-') then exit;
for i := 1 to length(s) do
if not (s[i] in ['-','0'..'9']) then exit;
result := true;
end;

Roud59
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de roud59
jlen100 1651 Messages postés samedi 10 juillet 2004Date d'inscription 25 juillet 2014 Dernière intervention - 24 juin 2005 à 11:27
+3
Utile
salut;

tu peux aussi utiliser le composant Tspinedit qui assure tous les
filtrages a la saisie avec en plus la possibilite de fixer des
limites aux valeurs autorisées

bonne prog
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de jlen100
cs_sim51 314 Messages postés dimanche 31 octobre 2004Date d'inscription 31 décembre 2006 Dernière intervention - 24 juin 2005 à 12:12
+3
Utile
Salut,

Pour moi il y a deux solutions, soit tu vérifies qu'une fois le text
rentré dans le tedit, c' est un nombre, ou alors tu utilise l'évenement
onkeypress du tedit.

Ainsi tu pourra vérifier que les touches préssées sont bien des touches
numériques. Cependant si ton nombre est négatif, tu dois pouvoir aussi
mettre un signe - comme premier caractère ( quand length(edit.text):=0
).

Voilà.

Bonne continuation.

N'oubliez pas de cliquer sur réponse acceptée si la réponse vous convient !!!
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_sim51
roud59 103 Messages postés jeudi 16 septembre 2004Date d'inscription 26 juillet 2007 Dernière intervention - 24 juin 2005 à 11:24
0
Utile
Encore une solution : utiliser un TMaskEdit

Roud59
Commenter la réponse de roud59
japee 1792 Messages postés vendredi 27 décembre 2002Date d'inscription 12 novembre 2016 Dernière intervention - 24 juin 2005 à 19:31
0
Utile
Salut, hysteria74



Par ta faute, j'ai posté un code ici :



http://www.delphifr.com/code.aspx?ID=32310



C'est peut-être un peu beaucoup pour un simple filtrage d'entier, mais... qui peut le plus peut le moins



Bonne prog'



japee
Commenter la réponse de japee

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.