Petit problème de conditions

Résolu
SylvainVV Messages postés 17 Date d'inscription mardi 6 novembre 2007 Statut Membre Dernière intervention 21 mai 2008 - 6 nov. 2007 à 19:53
SylvainVV Messages postés 17 Date d'inscription mardi 6 novembre 2007 Statut Membre Dernière intervention 21 mai 2008 - 7 nov. 2007 à 11:06
Bonjour,


étant novice, j'ai un petit problème et je pense que vous devriez pouvoir éclairer ma lanterne assez facilement :


Je voudrais faire une condition du style


Si condition

Alors consequence1 et consequence2


Mes essais m'ont conduit à faire ceci

http://www.siteduzero.com/forum-83-208409-p1-delphi.html#
<ol><li class="li1">
ifstrtofloat(note.text) > 20
</li><li class="li1">
then showmessage('Erreur : la note saisie est supérieure à 20');
</li><li class="li1">
        note2.text := #0;
</li></ol>


Le problème de cette solution, c'est que le champ redevient vide quel que soit la valeur saisie... facheux :D


J'avais aussi pensé à faire ceci :

http://www.siteduzero.com/forum-83-208409-p1-delphi.html#
<ol><li class="li1">
ifstrtofloat(note.text) > 20
</li><li class="li1">
then(showmessage('Erreur : la note saisie est supérieure à 20'))
</li><li class="li1">
        and(note2.text := #0);
</li></ol>


Dans ce cas, mon 'and' ne passe pas à la compilation !


Si quelqu'un pouvait m'aider sur ce problème bête et méchant, ce serait cool ! Merci d'avance !

7 réponses

Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
6 nov. 2007 à 20:07
Salut,

c'est effectivement très simple à résoudre :

If StrToFloat(Note.Text) > 20 Then
  Begin
    ShowMessage('Erreur : la note saisie est supérieure à 20');
    Note.Text := '';
  End
Else
Begin
    // ici le Traitement si la note est inférieur ou égale à 20
End;

 
@+
Cirec

<hr siz ="" />
3
SylvainVV Messages postés 17 Date d'inscription mardi 6 novembre 2007 Statut Membre Dernière intervention 21 mai 2008
6 nov. 2007 à 20:25
merci beaucoup pour la petite aide !

Ca marche impécablement bien !
0
cs_Loda Messages postés 814 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009 3
7 nov. 2007 à 09:12
salut,

lit l'aide de TryStrToFloat, ça risque de t'être utile.

A+

Loda
<hr size="2" width="100%" />Se poser les bonnes questions est le premier pas pour trouver les bonnes réponses.
0
SylvainVV Messages postés 17 Date d'inscription mardi 6 novembre 2007 Statut Membre Dernière intervention 21 mai 2008
7 nov. 2007 à 10:11
salut,


merci pour le petit coup de main, mais je n'ai pas trouvé de tryStrToFloat dans
Delphi 5... et puis, les conditionnelles fonctionnent plutôt bien pour ce que
j'ai à faire.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
florenth Messages postés 1023 Date d'inscription dimanche 1 août 2004 Statut Membre Dernière intervention 17 août 2008 3
7 nov. 2007 à 10:36
Salut,

Comme tu es novice, je te conseille un petit tour par ici : http://fbeaulieu.developpez.com/guide/
Tout est clairement expliqué, et ça permet d'aller chercher des horizons plus lointains, sans avoir de lacunes par endroits, ce qui est largement préférable !

++

Ressources Delphi, sources, tutoriaux, actu, ...: www.mx-dev.nethttp://te%3C/body
0
Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
7 nov. 2007 à 10:53
@ Loda :

Salut,


Effectivement TryStrToFloat n'existe pas sous D5 ...

Mais ce n'est pas un réel souci, on peut facilement recréer cette fonction en
utilisant "TextToFloat"


@SylvainVV :


L'intérêt d'utiliser une telle fonction est très simple :


Si (avec le code actuel) une erreur survient lors de la conversion, une exception
se déclanchera sans que tu puisses y remédier (pas top pour l'utilisateur
final)

Alors qu'avec TryStrToFloat ou TextToFloat tu peux intercepter cette erreur et
agir en conséquence sans que l'utilisateur s'en rende compte





 






@+
Cirec





<hr siz="" />
0
SylvainVV Messages postés 17 Date d'inscription mardi 6 novembre 2007 Statut Membre Dernière intervention 21 mai 2008
7 nov. 2007 à 11:06
OK je vois (et je comprend ^^)

Cela dit, je suis vraiment débutant en Delphi (et étant en première année de BTS, on est pas sensé encore maitriser ce genre de chose).
On est vraiment pas très avancé dans le cours (pour preuve, on a pas encore vu les conditionnelles ^_^'). Donc même si j'essaye de gérer les différentes erreurs histoire de grapiller un peu de points, je vais éviter d'aller trop loin dans ce domaine pour le moment... je voudrais en rester à des techniques plus 'simples'.

Mais en tout cas merci, je n'avais pas vraiment cherché à savoir comment Delphi gere 'naturellement' les erreurs... (je sais qu'en Java on utilise les Try... Catch, mais je n'ai pas encore cherché ce genre de choses sous Delphi).
Pour le coup je vais surement m'amuser à compléter mon TP juste 'pour moi'... ce sera toujours ça de pris = )

Et sinon florenth merci pour ce lien. Je vais m'amuser à lire ça dès que j'aurais un peu le temps =)
0
Rejoignez-nous