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 :

Action touche majuscule


Sujet :

VB.NET

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 13
    Points : 1
    Points
    1
    Par défaut Action touche majuscule
    Bonjour a tous,

    J'aimerais bien quand l'utilisateur appuie sur la touche verr.maj qu'il y a une msgbox disant que l'utilisateur n'a pas le droit d'utiliser les majuscules et désactiver la touche verr.maj

    si quelqu'un me dit la solution je serais très reconnaissant

    merci d'avance

  2. #2
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Bonjour JS7777,

    En utilisant un HookKeyBoard :

    http://geekswithblogs.net/aghausman/...win-app-c.aspx


    A+

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 13
    Points : 1
    Points
    1
    Par défaut
    Déjà merci pour ta réponse sauf que le code est en C#, il y a t-il en VB ?

    J'ai essayer le code en C#, ca ne marche pas

  4. #4
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Salut js7777,

    Alors c'etait en c# et ca ne te convenait pas ....et finalement en c# ca ne fonctionne pas....??

    L'as-tu simplement adapté a tes besoins ? Car si tu lis bien les commentaires de l auteur il s' agit d'interdire l'utilisation des touches windows !!

    Ici on ne poste pas des snippets a la demande mais on essaye juste de vous mettre sur la voie afin que votre matière grise fasse le reste.

    PS : si tu googlise le terme : hookkeyboard C# il y a de forte chance de trouver ton bonheur. Des librairies deja existantes.

    Cdlt

    A+

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 13
    Points : 1
    Points
    1
    Par défaut
    Le code ne marche pas, j'ai même télécharger le projet, mais ca ne marche pas, quand je met une textbox et je tape dedans on peut toujours mettre des majuscules.
    Je ne connais pas le code C# donc je peut pas modifier si je connais pas.
    J'ai chercher Hookkeyboard en vb mais rien trouvé

  6. #6
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Points : 2 439
    Points
    2 439
    Par défaut
    Qu'essayes-tu de faire ? Sois précis si tu souhaites avoir des réponses.
    Quel type de projet ? Winform, WPF, ASP NET, autre

    Dans le cas de WinForm et WPF il suffit de définir la propriété CharacterCasing à Lower. Ainsi tu ne pourras saisir que des minuscules.

  7. #7
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par JS7777 Voir le message
    Le code ne marche pas, j'ai même télécharger le projet, mais ca ne marche pas, quand je met une textbox et je tape dedans on peut toujours mettre des majuscules.
    Je ne connais pas le code C# donc je peut pas modifier si je connais pas.
    J'ai chercher Hookkeyboard en vb mais rien trouvé
    Que ne comprends-tu pas dans : adapter le projet à tes besoins ??
    Tu peux très bien ne pas connaitre le C# mais pour qqun qui souhaite faire du développement en DotNet, tu aurais au moins pu jeter un oeil sur les spécificités du langage IL nan ???

    .........brefffff.....encore qqun qui fonce tête baissé en voulant griller les étapes.....

    Voilà des convertisseurs de code C#<--->VbNet :
    http://converter.telerik.com/
    http://www.developerfusion.com/tools.../csharp-to-vb/


    Bonne continuation....

  8. #8
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 13
    Points : 1
    Points
    1
    Par défaut
    Merci pour ton message meziantou et wallace

    meziantou:
    Ce n'est pas pour la textbox c'est pour tout, c'est une appli Win form

    J'aimerais bien quand l'utilisateur appuie sur la touche verr.maj qu'il y a une msgbox disant que l'utilisateur n'a pas le droit d'utiliser les majuscules et désactiver la touche verr.maj

  9. #9
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Points : 2 439
    Points
    2 439
    Par défaut
    Si tu veux afficher un message lorsque l'utilisateur appuie sur la touche CapsLock, il suffit d'overrider la méthode ProcessCmdKey de Form

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Class Form1
        Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
            If keyData = Keys.CapsLock Then
                MessageBox.Show("CapsLock")
            End If
     
            Return MyBase.ProcessCmdKey(msg, keyData)
        End Function
     
    End Class
    Par contre je ne recommande pas de bloquer l'état de cette touche car son état est global à Windows. Il vaut mieux gérer cela au moment où l'utilisateur presse une touche dans ton application (notamment en utilisant ce que je t'ai indiqué précédemment)

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 13
    Points : 1
    Points
    1
    Par défaut
    Merci mezientou pour le code

    donc on peut pas désactiver cette touche pour toute l'application ?

    j'ai essayer ceci mais je sais pas ce qui manque, j'ai essayer e.handle = true mais rien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
     
            If e.KeyCode = Keys.CapsLock Then
     
     'Ici je sais pas quoi mettre
     
    MsgBox("Vous n'avez pas le droit d'utilser la majuscule")
     
            End If

  11. #11
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Points : 2 439
    Points
    2 439
    Par défaut
    Tu ne peux pas désactiver la touche uniquement pour l'application mais pour toutes les applications.

    Si tu tiens à désactiver CapLock :

    En c#:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            [DllImport("user32.dll")]
            static extern void keybd_event(byte bVk, byte bScan, uint dwFlags, UIntPtr dwExtraInfo);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
                if (Control.IsKeyLocked(Keys.CapsLock))
                {
                    const int KEYEVENTF_EXTENDEDKEY = 0x1;
                    const int KEYEVENTF_KEYUP = 0x2;
                    keybd_event(0x14, 0x45, KEYEVENTF_EXTENDEDKEY, (UIntPtr)0);
                    keybd_event(0x14, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, (UIntPtr)0);
                }

  12. #12
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 13
    Points : 1
    Points
    1
    Par défaut
    A quel emplacement dois-je mettre le code ?

  13. #13
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Points : 2 439
    Points
    2 439
    Par défaut
    A l'endroit où tu veux mettre CapLock à Off

  14. #14
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 13
    Points : 1
    Points
    1
    Par défaut
    je voulais dire ou mettre [DllImport("user32.dll")] car quand je met il y a des erreurs

  15. #15
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Points : 2 439
    Points
    2 439
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    Public Class Form1
        Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
            If keyData = Keys.CapsLock Then
                MessageBox.Show("CapsLock")
            End If
     
            Return MyBase.ProcessCmdKey(msg, keyData)
        End Function
     
        Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
            If Control.IsKeyLocked(Keys.CapsLock) Then
                Const KEYEVENTF_EXTENDEDKEY As Integer = &H1
                Const KEYEVENTF_KEYUP As Integer = &H2
                keybd_event(&H14, &H45, KEYEVENTF_EXTENDEDKEY, UIntPtr.Zero)
                keybd_event(&H14, &H45, KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, UIntPtr.Zero)
            End If
     
        End Sub
     
     
        <DllImport("user32.dll")> _
        Private Shared Sub keybd_event(bVk As Byte, bScan As Byte, dwFlags As UInteger, dwExtraInfo As UIntPtr)
        End Sub
    End Class

  16. #16
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2013
    Messages : 13
    Points : 1
    Points
    1
    Par défaut
    Quand maj est activé et on appuie sur le bouton ca désactive, ce qui parait normal

    mais si on reappuie sur maj ça active

Discussions similaires

  1. Modification action touche enter
    Par oclone dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 24/12/2008, 10h15
  2. Macro sup action touche entrer en fin ligne
    Par rico63 dans le forum VBA Word
    Réponses: 2
    Dernier message: 30/08/2007, 14h32
  3. Activation de la touche majuscule
    Par david71 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 28/06/2007, 18h51
  4. Desactiver la touche Majuscule
    Par AnjouWeb dans le forum Langage
    Réponses: 4
    Dernier message: 13/06/2007, 02h47

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