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

Windows Discussion :

Définir un textBox password avec le style XP


Sujet :

Windows

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    413
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 413
    Par défaut Définir un textBox password avec le style XP
    Bonjour à tous,
    Je suis en train d'essayer d'enlever et remettre le style ES_PASSWORD à un edit box.
    Pour l'enlever il n'y a pas de problèmes, mais pour le remettre je n'arrive pas à avoir les petits cercles noirs du style XP.
    Savez-vous comment faire?

    Merci d'avance,
    Nicolas

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 393
    Par défaut
    EM_SETPASSWORDCHAR ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    413
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 413
    Par défaut
    Oui c'est le message que j'utilise.
    Mais si je passe comme char l'astérisque, c'est, ça semble logique, l'astérisque qui est affichée. Or, par défaut c'est ce caractère : ● qui est affiché et donc celui que j'aimerais aussi afficher.
    Et d'ailleurs lorsque je fais un EM_GETPASSWORDCHAR sur une editbox qui est définie en ES_PASSWORD par defaut, celà me retourne bien le code Unicode de ce caractère.
    Mais par contre, si je fais un EM_SETPASSWORDCHAR avec comme paramètre le caractère ●, il ne m'affiche pas ce caractère.
    J'ai pensé modifier la police mais je ne suis pas arrivé à un bon résultat
    Avez-vous une idée?

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    413
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 413
    Par défaut
    J'ai fini par trouver comment faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    void TextBox::Password(bool set)
    {
    	if(set)
    	{
    		// Définir le car à ● (0x25cf), /!\ c'est de l'unicode => W
    		::SendMessageW(hWnd, EM_SETPASSWORDCHAR, 0x25cf, 0);
    	}
    	else
    		::SendMessage(hWnd, EM_SETPASSWORDCHAR, 0, 0);	
    }
    Bien sur la fonction devrait être un peu plus complète, il faudrait vérifier que l'os supporte l'unicode (je ne sais pas s'ils le supportent tous), et peut-être d'autres tests auxquels je n'ai pas pensé.

    En espérant que celà soit utile à quelqu'un

    [EDIT] Mon projet visual studio est configuré comme étant non unicode, logiquement si vous avez défini que vous utilisez l'unicode un simple SendMessage devrait prendre le #define SendMessageW par defaut et non le SendMessageA
    [/EDIT]

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/12/2005, 21h10
  2. [vb.net] définir un textbox dynamiquement
    Par arnolem dans le forum Windows Forms
    Réponses: 13
    Dernier message: 05/12/2005, 15h51
  3. Réponses: 1
    Dernier message: 30/11/2005, 14h57
  4. Renvoi d'une valeur dans un champ avec un style
    Par m@thieu dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 15/11/2005, 18h09
  5. Définir une appli JEE avec JB7 Entreprise
    Par polo54 dans le forum JBuilder
    Réponses: 4
    Dernier message: 10/06/2003, 11h48

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