Equivalent de la fonction Inputbox pour confirmer un mot de passe [Résolu]

Messages postés
3
Date d'inscription
lundi 3 avril 2006
Dernière intervention
25 mai 2008
- 24 mai 2008 à 19:34 - Dernière réponse :
Messages postés
3
Date d'inscription
lundi 3 avril 2006
Dernière intervention
25 mai 2008
- 25 mai 2008 à 23:40
Bonjour,

Tout d'abor merci d'avance a ceux qui me lirons et peut-être m'aideron ;)

Mon problème : Je souhaite faire une confirmation de mot de passe. Et j'aimerais savoir s'il existe un équivalent de la fonction Inputbox qui est très pratique pour cela. Car l'inputbox ne me permet pas de cacher le mot de passe en remplacant le test par d'autre caractère.

En gros : Y a-t-il un équivalent ou bien dois-je créé une nouvelle form pour créé moi même ma fenêtre de confirmation grace a la propriété PasswordChar d'un Edit ?

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

Votre réponse

8 réponses

Meilleure réponse
Messages postés
3869
Date d'inscription
samedi 22 décembre 2007
Dernière intervention
3 juin 2016
- 24 mai 2008 à 23:54
3
Merci
Bonjour,
il n'existe pas à ma connaissance de fonction pour afficher une fiche d'entrée de mot de passe. Néanmoins, Borland à pensé à nous et a implémenté une sympathique fiche préfaite : va dans Fichier => Nouveau => Autre puis cherche dans l'onglet "Dialogues" puis sélectionne "Dialogue Mot de Passe".

CAD créer une nouvelle fiche, ce que tu voulais éviter je crois :/
C'est vrai que c'est pas pratique et qu'une fiche est encombrante.
Tu peux aussi essayer de créer ta propre fonction qui afficherait une InputBox, avec protection et masque du mot de passe (regarde le code de InputQuery/Box ...)

J'espère t'avoir aidé !

Bonne chance ...

Cordialement, Bacterius !

Merci Bacterius 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de Bacterius
Meilleure réponse
Messages postés
1105
Date d'inscription
dimanche 1 août 2004
Dernière intervention
17 août 2008
- 25 mai 2008 à 11:34
3
Merci
Salut !

En utilisant CreateMessageDialog, tu peux créer dynamiquement une fiche qui contiendra ce que tu veux dedans, donc par exemple un TEdit avec PasswordChar = '*'.

De toutes façons, un inputbox reste une form.
L'avantage de ma méthode par rapport à la fiche "traditionnelle", c'est que celle-ci ne reste pas en mémoire continuellement: elle est libérée après chaque utilisation.

Par contre, c'est un peu plus long à coder.
Voir une exemple ici: http://www.delphifr.com/codes/UTILISATION-FONCTION-CREATEMESSAGEDIALOG_20425.aspx

A+
Flo

Merci florenth 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de florenth
Meilleure réponse
Messages postés
3869
Date d'inscription
samedi 22 décembre 2007
Dernière intervention
3 juin 2016
- 25 mai 2008 à 20:15
3
Merci
Bonjour, bien sur !

Il te faudra déclarer Form1 dans ta clause Uses :

quand tu vois "implementation", tu mets après :

uses (le nom de l'unité de ta première fenêtre [en général je l'appelle "main"]);

Il te faudra créer une nouvelle procédure, appellons la "Finished", tu la mets dans la fiche mère (celle qui n'est pas la fenêtre au mot de passe) et elle sera appellée quand l'utilisateur cliquera sur OK. Elle contiendra l'equivalent de ce que tu mets après le "IF" de ton InputBox !

Alors dans la fenêtre mère :

procedure TForm1.Finished;
begin
*le code après ton IF habituel*
end;

procedure Button1Click(Sender: TObject);
begin
// Correspond au code qui appelle la fenêtre (a partir d'un bouton par exemple)
Form2.ShowModal;
end;


Dans la fenêtre fiche, quand on clique sur le bouton OK

procedure OKClick(Sender: TObject);
begin
Finished; // On appelle la procédure
Close; // On ferme
end;

N'oublie pas de déclarer ta fenêtre mère dans la fenêtre au mot de passe, sinon ca ne marchera pas.

Je te laisse trouver le reste, sinon c'est trop facile :p

Cordialement, Bacterius !

PS : je me suis surement très mal exprimé : indique-nous ce que tu n'as pas compris, et je te réexpliquerai !

Merci Bacterius 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de Bacterius
Messages postés
3
Date d'inscription
lundi 3 avril 2006
Dernière intervention
25 mai 2008
- 25 mai 2008 à 18:39
0
Merci
Alors avant tout merci à vous 2 pour vos réponses.

Pour mon niveau qui est plutôt médiocre en delphi je pense que CreateMessageDialog est un petit peu compliquer pour moi :)
J'ai donc choisis la solution de créer une nouvelle fenêtre. Par contre un avantage que j'avais avec l'inputbox etait de pouvoir attendre la réponse dans un if comme ceci :

if InputBox('Confirmation du mot de passe', 'Retappez votre mot de passe', 'Votre mot de passe') = EdCryptKey.Text then

Comment pourrais-je créé un équivalent à l'aide d'une nouvelle fenêtre ?
Puis-je attendre la valeur de retour lorsque l'on appuie sur le boutton de confirmation ou non ?

Merci d'avance encore une fois pour vos éventuelles réponse.
Commenter la réponse de Wurzag
Messages postés
3869
Date d'inscription
samedi 22 décembre 2007
Dernière intervention
3 juin 2016
- 25 mai 2008 à 20:16
0
Merci
Ah oui un dernier truc :

" Avec Delphi, rien n'est impossible ! " ^^

Cordialement, Bacterius !
Commenter la réponse de Bacterius
Messages postés
3869
Date d'inscription
samedi 22 décembre 2007
Dernière intervention
3 juin 2016
- 25 mai 2008 à 20:16
0
Merci
Ah oui un dernier truc :

" Avec Delphi, rien n'est impossible ! " ^^

Cordialement, Bacterius !
Commenter la réponse de Bacterius
Messages postés
3869
Date d'inscription
samedi 22 décembre 2007
Dernière intervention
3 juin 2016
- 25 mai 2008 à 20:16
0
Merci
Zut !

Désolé :/

Cordialement, Bacterius !
Commenter la réponse de Bacterius
Messages postés
3
Date d'inscription
lundi 3 avril 2006
Dernière intervention
25 mai 2008
- 25 mai 2008 à 23:40
0
Merci
Oui c'est finalement la méthode que je vais appliquer.

Merci beaucoup pour vos réponse a tous.
Commenter la réponse de Wurzag

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.