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 :

Afficher un hint sous condition


Sujet :

Delphi

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Janvier 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : Algérie

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2018
    Messages : 64
    Points : 27
    Points
    27
    Par défaut Afficher un hint sous condition
    Bonjour,

    Je suis en train de créer une fiche pour entrer le nom d'utilisateur et le mot de passe. J'ai 2 Edit.
    Ce que je souhaite faire quand je saisis un mot de passe <6 caractères et que je clique sur le bouton connexion, c'est que le Edit2.Text m’affiche un hint (' le mot de passe doit avoir au moins 6 caractères ').
    Et merci !

  2. #2
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 858
    Points : 11 301
    Points
    11 301
    Billets dans le blog
    6
    Par défaut
    Bonjour,
    Il faudra donc loger le code dans l'événement OnClick du bouton connexion.
    Pour obtenir la longueur du mot de passe saisi, il faut utiliser la fonction Length() sur la chaîne saisie.
    Un simple test sur cette longueur permettra d'afficher le message.
    Un ShowMessage() est certainement bien adapté, le Hint sur le Edit2 devant afficher '6 caractères minimum' lors du survol par la souris, pour informer en permanence, donc même avant la saisie.
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Janvier 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : Algérie

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2018
    Messages : 64
    Points : 27
    Points
    27
    Par défaut
    oui merci je vais essayer de faire comme ça

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Janvier 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : Algérie

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2018
    Messages : 64
    Points : 27
    Points
    27
    Par défaut
    j'ai fait tout merci et maintenant j'ai fait un contrôle de la saisie sur le Tedit lorsque je saisie et voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
     if ((key<'a')or(key>'z')) then
    begin
    edit1.ReadOnly := true;
    ShowMessage ('Entrez un caractère');
    end
    else edit1.ReadOnly := false;
    end;
     
    end.
    le problème quand je saisie au caractère faux et je veux le supprimer au clic du bouton clavier il m'affiche le message 'entrer un caractère'

  5. #5
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 858
    Points : 11 301
    Points
    11 301
    Billets dans le blog
    6
    Par défaut
    C'est très bien de contrôler la validité d'une touche saisie.
    L'événement OnKeyPress accepte justement le paramètre Key (touche frappée) comme variable afin de pouvoir la modifier si nécessaire (mettre en majuscule par exemple) ou l'annuler si invalide.
    Le code suivant illustre ces mécanismes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
    begin
     if ( Key in ['a'..'z'] ) then 
      Key := UpCase(Key); // mise en majuscule du caractère
     if not ( Key in ['A'..'Z'] ) then 
      Key := #0 ; // annule la saisie en rendant nul le caractère si non alphabétique majuscule
    end;
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Janvier 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : Algérie

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2018
    Messages : 64
    Points : 27
    Points
    27
    Par défaut
    merci ton code et très utiles mais comment je fait si Ecrit par exemple 'adman' au lieu de 'admin' la touche retour du clavier pour supprimer ne marche pas

  7. #7
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 858
    Points : 11 301
    Points
    11 301
    Billets dans le blog
    6
    Par défaut
    Tu as raison ; il suffit de multiplier les tests pour autoriser des touches supplémentaires, sur le modèle de la FAQ qui gère la touche BACK de code ASCII VK_BACK, correspondant au caractère #8.
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Janvier 2018
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : Algérie

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2018
    Messages : 64
    Points : 27
    Points
    27
    Par défaut
    merci beaucoup tourlouro de ton aide mon problème et résolu grâce a vous je suis très reconnaissant de ton effort avec moi

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

Discussions similaires

  1. Excel avec code source protégé
    Par ComfortablyNumb dans le forum Langage
    Réponses: 0
    Dernier message: 11/10/2008, 20h01
  2. Réponses: 15
    Dernier message: 23/01/2007, 15h27
  3. Pb avec code source "lister les images d'un dossier"
    Par Mimisator dans le forum Langage
    Réponses: 2
    Dernier message: 19/10/2005, 15h25

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