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 :

Evenement KeyDown sur Panel


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Scientist
    Inscrit en
    Mai 2013
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Scientist
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2013
    Messages : 110
    Par défaut Evenement KeyDown sur Panel
    Bonjour,

    J'essaye d'utiliser l'evenement KeyDown sur ma Form1. Le but etant d'utiliser les fleches pour faire bouger une serie de Panels sur le Panel2 d'un SplitContainer1.

    Malheureusement cela ne marche pas. Si j'appuie sur une touche avec un point d'arret au debut du code, c'est ignore, cela ne rentre meme pas dans la sub.

    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
     
    Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
            ' Move the mainPanel with CTRL + Arrows
            If e.Modifiers = Keys.Control Then
                Select Case e.KeyCode
                    Case Keys.Right
                        movingMainPanel(10, 0)
                        e.Handled = True
                    Case Keys.Left
                        movingMainPanel(-10, 0)
                        e.Handled = True
                    Case Keys.Up
                        movingMainPanel(0, -10)
                        e.Handled = True
                    Case Keys.Down
                        movingMainPanel(0, 10)
                        e.Handled = True
                End Select
            End If
        End Sub
    Je ne comprends pas le probleme. Une idee, une explication ou encore mieux une solution a ce probleme serait le bienvenu.

    Merci,
    A+
    JLuc01

  2. #2
    Membre confirmé
    Homme Profil pro
    Scientist
    Inscrit en
    Mai 2013
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Scientist
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2013
    Messages : 110
    Par défaut
    Salut,

    Je pensais que le SplitContainer pourrait etre le probleme. Meme si, dans une autre application similaire, cela semble marcher.

    J'ai donc fais des tests tres simple:
    - dans une application vide:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ' CA MARCHE
    Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
            Beep()
    End Sub
    - dans une application avec Split Container:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ' CA NE MARCHE PAS
    Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
            Beep()
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    'CA MARCHE
    Private Sub SplitContainer1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles SplitContainer1.KeyDown
            Beep()
    End Sub
    Cependant, l'evenement 'SplitContainer1_KeyDown' ne marche pas dans l'application du message precedent.

    Bref, je ne comprends plus rien.

    A+
    JLuc01

  3. #3
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Par défaut
    Bonsoir,

    regarde du coté de Form.KeyPreview

  4. #4
    Membre confirmé
    Homme Profil pro
    Scientist
    Inscrit en
    Mai 2013
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Scientist
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2013
    Messages : 110
    Par défaut
    Bien vu. La propriete 'KeyPreview' etait a False.
    Maintenant, l'evenement est au moins considere.

    Merci,
    A+
    JLuc01

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

Discussions similaires

  1. Evenement KeyDown sur une ComboBox
    Par methos99 dans le forum Flex
    Réponses: 2
    Dernier message: 23/04/2009, 10h42
  2. Evenement MouseWheel sur un panel
    Par Rodrigue dans le forum C++/CLI
    Réponses: 3
    Dernier message: 28/03/2008, 20h57
  3. Evenement sur panel
    Par lun4t1k dans le forum wxWidgets
    Réponses: 2
    Dernier message: 06/04/2007, 11h24
  4. [vb.net][KeyDown] Evenement F12 sur la form
    Par arnolem dans le forum Windows Forms
    Réponses: 4
    Dernier message: 05/01/2006, 12h58
  5. capter l'evenement clic sur une cellule d'un string grid
    Par lasconic dans le forum Composants VCL
    Réponses: 3
    Dernier message: 25/06/2003, 11h51

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