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

VB.NET Discussion :

convertir minuscule en majuscule lors de saisie


Sujet :

VB.NET

  1. #1
    WBO
    WBO est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 78
    Points : 57
    Points
    57
    Par défaut convertir minuscule en majuscule lors de saisie
    bonjour,

    je souhaiterais convertir lors de la saisir (code sur l'évènement KeyPress), les lettres minuscules en majuscules.

    je suis en vb.net, et sur un champ textbox.

  2. #2
    WBO
    WBO est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 78
    Points : 57
    Points
    57
    Par défaut
    j'ai essayé le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
        Private Sub tb_Personne_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tb_Personne.KeyPress
            If (e.KeyChar = CR) Then
                ' On filtre la touche
                e.Handled = True
            End If
            UCase(e.KeyChar)
        End Sub
    mais le
    UCase(e.KeyChar)
    n'a aucun effet

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    (beaucoup) plus simple : mets la propriété CharacterCasing de la TextBox à Upper

  4. #4
    Membre actif
    Avatar de Hatchepsout
    Inscrit en
    Octobre 2006
    Messages
    170
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 170
    Points : 222
    Points
    222
    Par défaut
    ou aussi

    Dans ton tb_Personne_KeyPress, tu met

    KeyAscii = Asc(UCase(Chr(KeyAscii)))

    bonne chance
    " Ce n'est pas parce que les choses sont difficiles que nous n'osons pas, c'est parce que nous n'osons pas qu'elles sont difficiles. "

    Mon Pays

  5. #5
    WBO
    WBO est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 78
    Points : 57
    Points
    57
    Par défaut
    tout d'abord, meilleurs voeux pour 2009.

    ensuite pour en revenir à mes moutons :


    je n'ai pas la propritété suivante au niveau de mon textBox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mets la propriété CharacterCasing de la TextBox à Upper
    en outre, pour la 2ième solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dans ton tb_Personne_KeyPress, tu met
    KeyAscii = Asc(UCase(Chr(KeyAscii)))
    à quoi correspond le
    KeyAscii
    ?

  6. #6
    Membre actif
    Avatar de Hatchepsout
    Inscrit en
    Octobre 2006
    Messages
    170
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 170
    Points : 222
    Points
    222
    Par défaut explication
    bonjour

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    KeyAscii = Asc(UCase(Chr(KeyAscii)))
    keyascii = la code ascii retourner de la caractère taper sur le clavier.
    Chr = retourne le caractère associé à un code Ascii
    Ucase = transforme une chaîne de caractères en majuscule
    Asc = retourne le code Ascii d'un caractère


    bonne chance++
    " Ce n'est pas parce que les choses sont difficiles que nous n'osons pas, c'est parce que nous n'osons pas qu'elles sont difficiles. "

    Mon Pays

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par WBO Voir le message
    j'ai essayé le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
        Private Sub tb_Personne_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tb_Personne.KeyPress
            If (e.KeyChar = CR) Then
                ' On filtre la touche
                e.Handled = True
            End If
            UCase(e.KeyChar)
        End Sub
    mais le
    n'a aucun effet
    Normal : UCase ne modifie pas le paramètre, ça renvoie un nouveau char. Il faut faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    e.KeyChar = UCase(e.KeyChar)
    Citation Envoyé par WBO Voir le message
    je n'ai pas la propritété suivante au niveau de mon textBox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mets la propriété CharacterCasing de la TextBox à Upper
    Tu es sûr ? Pourtant j'ai vérifié, elle est là depuis la version 1.0 du Framework... Tu ne travailles pas sur le Compact Framework ?

    Citation Envoyé par WBO Voir le message
    à quoi correspond le
    ?
    A rien, ça n'existe pas...

  8. #8
    Membre actif
    Avatar de Hatchepsout
    Inscrit en
    Octobre 2006
    Messages
    170
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 170
    Points : 222
    Points
    222
    Par défaut
    Citation Envoyé par tomlev Voir le message

    A rien, ça n'existe pas...

    c'est quoi qui n'existe pas??


    enfin pour WBO

    voici la code complete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub tb_Personne_KeyPress (KeyAscii As Integer)
       KeyAscii = Asc(UCase(Chr(KeyAscii)))
    End Sub
    " Ce n'est pas parce que les choses sont difficiles que nous n'osons pas, c'est parce que nous n'osons pas qu'elles sont difficiles. "

    Mon Pays

  9. #9
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par Hatchepsout Voir le message
    c'est quoi qui n'existe pas??


    enfin pour WBO

    voici la code complete
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub tb_Personne_KeyPress (KeyAscii As Integer)
       KeyAscii = Asc(UCase(Chr(KeyAscii)))
    End Sub
    euh... c'est quoi ça ? En VB.NET l'évènement KeyPress a la signature suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private Sub tb_Personne_KeyPress (sender As Object, e As KeyPressEventArgs)
    Et il n'y a nul part d'argument ou de propriété KeyAscii... Tu confonds peut-être avec VB6 ?

    EDIT: après vérification, je confirme : tu confonds avec VB6... C'est le forum Visual Basic .NET ici

  10. #10
    WBO
    WBO est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 78
    Points : 57
    Points
    57
    Par défaut
    donc pour la propriété CharacterCasing de la TextBox à Upper, je confirme, elle existe bien pour une application de type windows, mais elle n'existe pas pour une application en windows ce ().

    j'avais déjà essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    e.KeyChar = UCase(e.KeyChar)
    ce code là, mais la propriété
    e.KeyChar
    est une propriété en ReadOnly.

  11. #11
    Membre actif
    Avatar de Hatchepsout
    Inscrit en
    Octobre 2006
    Messages
    170
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 170
    Points : 222
    Points
    222
    Par défaut
    arf

    ben oui après vérification et après prendre un très grand tasse du café me suis bien réveillée , ben oui t'a raison c'etait du vb6 (ca fait un petit moments que je ne touche plus au vb.net) :red:


    mais bon en recherchant me suis tombée sur ça http://www.developpez.net/forums/d68...ettre-toupper/,

    peut être ça aide
    " Ce n'est pas parce que les choses sont difficiles que nous n'osons pas, c'est parce que nous n'osons pas qu'elles sont difficiles. "

    Mon Pays

  12. #12
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Citation Envoyé par WBO Voir le message
    la propriété e.KeyChar est une propriété en ReadOnly.
    Argh... dis donc ça a l'air sympa le compact framework, c'est pareil que le vrai sauf que tu peux rien faire
    Sinon tu peux essayer comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        Private Sub tb_Personne_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles tb_Personne.KeyPress
            If (e.KeyChar > Chr(32)) Then ' Pour exclure les caractères de contrôle
                tb_Personne.SelectedText = UCase(e.KeyChar)
                e.Handled = True
            End If
        End Sub

  13. #13
    WBO
    WBO est déconnecté
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 78
    Points : 57
    Points
    57
    Par défaut
    ca marche c'est nickel.

    pour windows CE, c'est vrai que c'est plus contraignant que pour une appli windows, mais bon, on choisit pas toujours son support !!

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 03/01/2011, 12h34
  2. Réponses: 3
    Dernier message: 18/10/2009, 11h31
  3. Convertir minuscules / Majuscules
    Par mystro7200 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 07/11/2008, 16h16
  4. Réponses: 4
    Dernier message: 22/10/2007, 13h51
  5. Réponses: 5
    Dernier message: 12/12/2006, 10h19

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