Como buscar presións nos formularios de Windows .NET) Como comprobar se hai prensas de edición

  • 26/10/2020
  • 2 minutos de lectura
    • a
    • o

Como as teclas de usuario de usuario na súa aplicación, pode controlar as teclas de modificación presionadas como Shift, Altet Ctrl.As as teclas de tipo de usuario na súa aplicación, pode controlar Para as teclas de edición presionadas como o cambio, Alt e Ctrl. Cando se preme un botón de cambio en combinación con outras teclas ou incluso un clic do rato, a súa aplicación pode reaccionar de forma adecuada. Cando unha chave de modificación é presionada en combinación con outras teclas ou mesmo un clic do rato, a súa aplicación pode responder de forma adecuada. Por exemplo, premer a tecla S pode resultar na pantalla dun “s” na pantalla. Por exemplo, premer a tecla S pode provocar que apareza un “S” na pantalla. Se se presionan as teclas Ctrl + S, o documento activo pode ser gardado. Se as teclas Ctrl + S son presionadas, no seu lugar, o documento actual pode gardarse.

Importante

A documentación da guía de oficina para .NET 5 (e .NET Core) está en construción. A guía de escritorio para .NET 5 (e .NET Core) está en construción.

Se xestiona o evento de KeyDown, a propiedade Keyeventtargs.Modifiers recibida polo manipulador de eventos especifica que botóns de modificación están deprimidos. Manexa o evento de keydown, a propiedade keyeventtargs.Modifiers recibida polo manipulador de eventos especifica que as teclas de edición están presas. Ademais, a propiedade keyeventargs.keydata especifica o carácter que foi presionado coas teclas de modificación asociadas a unha operación de ouro no bit.Also, a propiedade keyeventargs.keydata especifica o carácter que se presionou xunto con calquera tecla de edición combinada cun bit Ouro.

Se xestiona o evento de keypress ou un evento do rato, o xestor de eventos non recibe esta información. Está a manipular o evento de keypress ou un evento do rato, o controlador de eventos non recibe isto Información. Use a propiedade EditKeys da clase de control para detectar un modificador de teclas. Use a propiedade EditKeys da clase de control para detectar unha edición clave. En ambos casos, debes realizar unha operación de bit de bit e valor adecuada e o valor que tes probas. En calquera caso, debes realizar un valor de teclas bit e as claves axeitadas e o valor que estás probando. A enumeración de teclas ofrece variacións en cada tecla de modificación. Polo tanto, é importante que proceda ao nivel ILO e que consulte co valor correcto. A enumeración de teclas ofrece variacións de cada chave de edición, polo que é importante que faga o bit e comproba co valor correcto.

Por exemplo, a chave de desprazamento está representada polos seguintes valores clave: por exemplo, a tecla de cambio está representada polos seguintes valores clave:

  • keys.lift
  • Teclas.hiftKey
  • keys.rshiftKey
  • keys.lshiftKey

O valor correcto para probar a tecla Maiúsculas como unha chave de modificación é Keys.lift . O valor correcto para probar o cambio como para modificar a chave é a chave. Do mesmo xeito, para probar as teclas Ctrl e Alt como modificadores, debes usar chaves.control respectivamente as claves. Valores e.Similaramente, probar a CTRL e ALT como modificadores que debes usar as chaves.control e as claves. Valores, RESPONSA-

Cambio de detección Chave de edición de tecla

Detectar se se preme unha tecla de modificación comparando a propiedade de edicións e o valor de enumeración de teclas cun operador de bits e.Detect se a clave modificada está orgullosa Mediante a propiedade completa e as teclas Enumen o valor con un operador bitway e operador.

O seguinte exemplo de código mostra como determinar se a tecla Maiús é presionada nos xestores de eventos de tecla e KeyDown. O seguinte código de código como determinar Se a tecla Maiús está presionada dentro dos manipuladores de tecla e teclado de eventos

// Event only raised when non-modifier key is pressedprivate void textBox1_KeyPress(object sender, KeyPressEventArgs e){ if ((Control.ModifierKeys & Keys.Shift) == Keys.Shift) MessageBox.Show("KeyPress " + Keys.Shift);}// Event raised as soon as shift is pressedprivate void textBox1_KeyDown(object sender, KeyEventArgs e){ if ((Control.ModifierKeys & Keys.Shift) == Keys.Shift) MessageBox.Show("KeyDown " + Keys.Shift);}
' Event only raised when non-modifier key is pressedPrivate Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) If ((Control.ModifierKeys And Keys.Shift) = Keys.Shift) Then MessageBox.Show("KeyPress " & .GetName(GetType(Keys), Keys.Shift)) End IfEnd Sub' Event raised as soon as shift is pressedPrivate Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) If ((Control.ModifierKeys And Keys.Shift) = Keys.Shift) Then MessageBox.Show("KeyPress " & .GetName(GetType(Keys), Keys.Shift)) End IfEnd Sub

Ver tamén Aussisee tamén

  • Ver Uso xeral do teclado (Windows Forms .NET) Descrición xeral do uso do teclado (Windows Forms .NET)
  • Usar eventos de teclado (Windows Forms .NET) Usando eventos de teclado (Windows Forms .NET)
  • teclas
  • modificykeys
  • keydown
  • keypress

Deixa unha resposta

O teu enderezo electrónico non se publicará Os campos obrigatorios están marcados con *