Faire une entrée de donnée type "Mot de passe"

Vous voulez de l'aide ? Postez ici :)
Post Reply
Tara42
Posts: 40
Joined: 16 Jul 2014, 21:54

Faire une entrée de donnée type "Mot de passe"

Post by Tara42 »

Bonjour,

Que faut-il faire au niveau de l'action "Entrée de donnée" pour que le champ de saisie soit de type "Mot de passe", c'est-à-dire masqué avec des astérisques ??

Il faut probablement utiliser Qt et setEchoMode, mais comment ?

Merci par avance pour votre aide.

Bien cordialement.
Last edited by Tara42 on 07 Aug 2014, 23:02, edited 1 time in total.
Tara42
Posts: 40
Joined: 16 Jul 2014, 21:54

Re: Faire une entrée de donnée type "Mot de passe"

Post by Tara42 »

J'avance en utilisant une action "Code" mais j'ai encore une erreur car Password est pris en compte comme une variable et je ne comprends pas pourquoi :(

Code: Select all

var window = new QDialog();
var layout = new QFormLayout(window);
var nameLineEdit = new QLineEdit(window);
var buttonBox = new QDialogButtonBox(window);

buttonBox.addButton(QDialogButtonBox.Ok);
buttonBox.accepted.connect(window.accept);

nameLineEdit.setTextEchoMode(Password);

layout.addRow("Mot de passe :", nameLineEdit);
layout.addRow(buttonBox);

if(window.exec() == QDialog.Accepted)
    MessageBox().setText("Votre mot de passe a bien été enregistré pour cette session de signature").showModal();
Votre avis ?
francois
Posts: 456
Joined: 18 Oct 2010, 10:33
Location: France

Re: Faire une entrée de donnée type "Mot de passe"

Post by francois »

Bonjour,

Une piste :

var myObject = new InputDialog();

myObject.setInputType(0) // 0 pour text - 1 pour integer - 2 pour float -- 3 pour list
myObject.setTextEchoMode(2); // affichage : 0, normal - 1 rien - 2 mode password

myObject.showModal();
Console.print(myObject.value)

cordialement

Francois
Tara42
Posts: 40
Joined: 16 Jul 2014, 21:54

Re: Faire une entrée de donnée type "Mot de passe"

Post by Tara42 »

francois wrote:Bonjour,

Une piste :

var myObject = new InputDialog();

myObject.setInputType(0) // 0 pour text - 1 pour integer - 2 pour float -- 3 pour list
myObject.setTextEchoMode(2); // affichage : 0, normal - 1 rien - 2 mode password

myObject.showModal();
Console.print(myObject.value)

cordialement

Francois
Bonjour François,

Tes réponses sur ce post et sur celui concernant l'utilisation de "InputDialog" m'ont vraiment permis d'avancer...

En fait, les valeurs données à la fin de cette page :

https://wiki.actionaz.org/doku.php?id=f ... log#valeur

ne sont pas bonnes (en fait cela démarre à 0 et non pas à 1) et bien évidemment il ne faut pas taper le texte mais la valeur !

Il existe cependant deux manières de faire que je reprends dans le code ci-après (soit en arguments de la fonction soit avec les méthodes).

Code: Select all

var myObject = new InputDialog({
    title: "Entrez votre mot de passe :",
    visible:true,
    enabled:true,
    //textEchoMode: InputDialog.Password,
    //inputType: InputDialog.Text,
});
myObject.setTextEchoMode(2);
myObject.setInputType(0);
myObject.showModal();
var A = myObject.value;
Dans ce code, le résultat est stocké dans la variable A (on peut utiliser alors une boîte de dialogue pour afficher le résultat) et utilise les méthodes pour le type d'entrée et le texte du mode Echo. A la place de myObject.setTextEchoMode(2) et myObject.setInputType(0), on peut donc aussi utiliser les arguments de la fonction correspondants (lignes en commentaire).

Encore merci et j'espère que ces quelques précisions pourront servir à d'autres !

Bien cordialement. :D
User avatar
Jmgr
Admin
Posts: 1650
Joined: 07 Dec 2005, 15:45
Contact:

Re: Faire une entrée de donnée type "Mot de passe"

Post by Jmgr »

ne sont pas bonnes (en fait cela démarre à 0 et non pas à 1) et bien évidemment il ne faut pas taper le texte mais la valeur !
Ha, en fait il ne s'agit pas de la valeur numérique mais juste des éléments d'une énumération du wiki... C'est vrai que ce n'est pas très clair. C'est corrigé, en tous cas sur cette page.
"My software never has bugs. It just develops random features."
Post Reply