IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

L'expression constante dépasse les limites


Sujet :

Langage Delphi

  1. #1
    Membre habitué Avatar de sondo
    Homme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Août 2004
    Messages
    540
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Service public

    Informations forums :
    Inscription : Août 2004
    Messages : 540
    Points : 162
    Points
    162
    Par défaut L'expression constante dépasse les limites
    Bonjour,

    Je rencintre ce problème que je souhaite poser; voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    procedure TForm1.TarifEditKeyPress(Sender: TObject; var Key: Char);
    var Tarif :Integer;
    begin
      if (key = #13) then
       begin
         tarif := StrToInt(TarifEdit.text);
         if not (Tarif in[15013, 15022, 15032]) then
            begin
              MessageDlg('Code tarif érroné !', mtError, [mbOK], 0);
              TarifEdit.SelectAll;
              key := #0;
            end;
        end;
    end;
    Les éléments à vérifier sont de 5 chiffres tel que 15013, 15022, 15032... Je remarque que si les éléments de in[...] dépasse 4 chiffres il y'a une exception :' L'expression constante dépasse les limites de sous-étendue'.
    Comment faire de tel sorte que les éléments à vérifier dépasse 5 chiffres.
    Merci d'avance pour toutes aides.

  2. #2
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    Les valeurs de ton ensemble ne peuvent dépasser la valeur de 255.

    Citation Envoyé par Aide de Delphi
    Le type de base ne peut avoir plus de 256 valeurs possibles et leur rang doit être compris entre 0 et 255
    Utilise un if ou un case.

    [Edit] erroné au lieu d'érroné

    @+ Claudius

  3. #3
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 764
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 764
    Points : 13 386
    Points
    13 386
    Par défaut
    Ne serait-il pas plus simple de remplacer l'edit par un combobox ne proposant que les trois tarifs admissibles ?

  4. #4
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Citation Envoyé par Andnotor Voir le message
    Ne serait-il pas plus simple de remplacer l'edit par un combobox ne proposant que les trois tarifs admissibles ?
    +1

    Ce qui évitera quelques éventuelles soucis d'exécution avec StrToInt.

Discussions similaires

  1. Réponses: 30
    Dernier message: 11/12/2014, 20h16
  2. Les expressions constantes en C++0x
    Par JolyLoic dans le forum C++
    Réponses: 1
    Dernier message: 16/03/2008, 12h47
  3. Réponses: 2
    Dernier message: 13/10/2005, 19h04
  4. Quelles sont les limites de INTERBASE 7.5 ?
    Par lio33 dans le forum InterBase
    Réponses: 1
    Dernier message: 21/07/2005, 12h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo