Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [VB2010] Control vs Alt in KeyDown

    Provate a settare la proprietà KeyPreview di un Form su "True" e poi ad inserire questo semplicissimo codice:

    codice:
     Private Sub Form1_Keydown(sender As Object, _
      e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
    
            Debug.Print("Ok, sono passato per KeyDown")
    
     End Sub
    Se ora premete e rilasciate "Control" vedete che l' evento si genera AD OGNI PRESSIONE del tasto.

    Se premete e rilasciate "Alt" l' evento si genera una volta si ed una volta no.

    Perché? Come si può "forzare" l' evento ad essere generato ad ogni pressione di Alt?

  2. #2
    Utente di HTML.it L'avatar di Vinsent
    Registrato dal
    May 2011
    Messaggi
    314
    Questa si che è bella!
    Ho provato a vedere i messaggi:
    codice:
        Protected Overrides Sub WndProc(ByRef msg As Message)
            Console.WriteLine(msg)
            MyBase.WndProc(msg)
        End Sub
    e Alt scrive due serie alternate di messaggi, mentre Control sempre la stessa serie.
    Forse perchè Alt attiva/disattiva i menù della form?
    Per mettere una "pezza" potresti aggiungere delle condizioni al codice sopra in modo da gestire i due "comportamenti" del tasto Alt.
    Ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.