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

Delphi Discussion :

Problème avec EditMask Delphi 7


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 285
    Par défaut Problème avec EditMask Delphi 7
    Bonjour,
    Problème avec EditMask Delphi 7. ...!00\ 00\ 00\ 00\ 00;1;_ (Numéro de téléphone)
    Lorsque je saisi une date, que je veux effacer suite à une erreur et quitter le DBEdit, j ' ai un message d ' erreur "Valeur d'entrée incorrecte....

    Est ce que quelqu'un sait comment résoudre ce problème?

    D'avance merci

    Codial

  2. #2
    Membre émérite Avatar de PadawanDuDelphi
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2006
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2006
    Messages : 678
    Par défaut
    Bonjour,

    Ce qu'il te faut c'est intercepté le message d'erreur provoqué par ton editmask à la sortie, et là en fait ce que tu veux...Je sais que le composant TApplicationEvent peux faire ça, mais pense peut-être simplement à un try...Exept;
    Et surtout décoche l'option du Débugger si tu ne veux pas voir les messages d'erreur.

    @+.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 285
    Par défaut Problème avec EditMask Delphi 7
    Bonjour,

    une précision STP, concrètement comment je peux intercepter l'erreur et dans quel évènement?

    D'avance merci, en ce moment je bloque là-dessus!!

    Cordialement

    Codial

  4. #4
    Membre émérite Avatar de PadawanDuDelphi
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2006
    Messages
    678
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2006
    Messages : 678
    Par défaut
    Désolé mais je n'emploi jamais de MaskEdit, je préfère gérer mes propres exeptions, avec mes propres vérifications.

    Essaye ça (non garantie):
    Pose un TApplicationEvent sur ta forme et code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    try
    procedure TForm1.ApplicationEvents1Exception(Sender: TObject;
      E: Exception);
    begin
      if E is EDBEditError then
        (* annuler la saisie *)
     maskedit.mask := '';  // c'est pas la bonne commande mais le but est d'annulé ton mask, ke tu réactivera sur le on enter de ton maskedit;
     maskedit.text := '';
     form.setfocus; // donner le focus a ta forme
    end;
    Après ce que tu code dans l'exception peut surement être plus professionnel et mieux adapter à tes besoins.


    @+.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    285
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 285
    Par défaut
    Bonjour,

    merci de bien vouloir prendre sur ton temps.
    En fait ce ne sont pas maskEdit que j'ai, j'ai affecté à certains champs d'une table un editMask.
    Cet après midi en cherchant j'ai bien mis un TApplicationEvent sur ma form et je suis arrivé à écrire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    procedure TSai_Clients.ApplicationEvents1Exception(Sender: TObject;
      E: Exception);
    begin
       if E is EDBEditError then
        if trim(dbedit5.Text)='' then DM.tblClientsTel1_Client.text:= ' ';
        if trim(dbedit16.Text)='' then DM.tblClientsTel2_Client.Text :=' ';
        if trim(dbedit6.Text)='' then DM.tblClientsGsm1_Client.Text:=' ';
        if trim(dbedit17.Text)='' then DM.tblClientsGsm2_Client.Text:=' ';
        if trim(dbedit19.Text)='' then DM.tblClientsFax_Client.Text:=' ';
        Sai_Clients.setfocus;
    end;
    Celà effectivement lève l'exception mais le problème quand je vide un DBEdit il faut que je clique deux fois sur un bouton ok pour enregitrer et fermer le form.

    En effet, quand avec la touche TAB je veux sortir du DBEdit, il redonne le focus à tout le mask (même si j'enlève le mask, il ne sort pas du DBEDit) et c'est seulement après avoir appuyé une deuxième fois sur cette touche que le curseur sort du DBEdit.

    Il n'y a pas une solution plus propre ?

    D'avance merci

    Codial

  6. #6
    Membre éclairé
    Avatar de OutOfRange
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    533
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 533
    Par défaut
    Salut

    Est-ce que le problème ne viendrait pas tout simplement du masque ?
    Citation Envoyé par aide D6
    0 Ce caractère exige un caractère numérique à cette position.
    9 Ce caractère autorise un caractère numérique à cette position, mais ne l'exige pas.
    En remplaçant les 0 par des 9, je pense que ça pourrait régler le pb...

    Si le TEditMask perd le focus alors que tous les chiffres ne sont pas saisis, il n'y a pas d'erreurs...
    Alors que des zéros déclenchent une EDBEditError

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème avec RoundTo (Delphi Xe3)
    Par patoche.05 dans le forum Langage
    Réponses: 6
    Dernier message: 08/03/2013, 09h40
  2. Problème avec WNetAddConnection2 (delphi 7.0)
    Par THONGSOUM dans le forum Web & réseau
    Réponses: 1
    Dernier message: 25/11/2009, 11h46
  3. problème avec BDE delphi 3 et serveur windows 2003
    Par korntex5 dans le forum Bases de données
    Réponses: 2
    Dernier message: 07/07/2006, 22h58
  4. [Delphi 2005] : Problème avec MessageDlg.....
    Par babyface dans le forum Langage
    Réponses: 2
    Dernier message: 08/07/2005, 12h07
  5. [Delphi 3] Problème avec fichier ressource .RES
    Par delphim dans le forum EDI
    Réponses: 2
    Dernier message: 28/06/2005, 18h11

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