Ir al contenido



Foto

Virtual key en lazarus


  • Por favor identifícate para responder
5 respuestas en este tema

#1 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.007 mensajes
  • LocationSanto Domingo

Escrito 13 marzo 2010 - 06:42

Como pase un poco de trabajo para poner a funcionar virtual key en lazarus he decidido poner un listado que encontre sobre los valores numeros de las diferentes teclas. Estos valores lo use asi:

luego de poner en el oncreate del form:


delphi
  1. keypreview:=true; 



y por ejemplo para usar la tecla escape
en el onkeydown del form se pone:


delphi
  1. if (key =27) then
  2. begin
  3. lo que deseas que pase
  4. end;
  5.  
  6.  



se que la mayoria de los que estan aqui saben esto, pero me gusta pensar que tambien hay muchos que necesitan saber las cosas desde el principio.  Ademas lo pongo aqui por si estoy haciendo algo que puede ser mejorado, me hagan el favor y lo indiquen.

Aqui esta la lista que prometi:


[table]

[tr][td]-------------------------[/td] [td]-------------------------[/td] [td]-------------------------[/td][/tr]
[tr][td]vk_BackSpace = 8[/td][td]vk_Tab = 9[/td][td]vk_Return = 13[/td][/tr]
[tr][td]vk_Shift = 16[/td][td]vk_Control = 17[/td][td]vk_Alt = 18[/td][/tr]
[tr][td]vk_Pause = 19[/td][td]vk_CapsLock = 20 [/td][td]vk_Escape = 27[/td][/tr]
[tr][td]vk_Space = 32[/td][td]vk_PageUp = 33[/td][td]vk_PageDown = 34[/td][/tr]
[tr][td]vk_End = 35[/td][td]vk_Home = 36[/td][td]vk_Left = 37[/td][/tr]
[tr][td]vk_Up = 38[/td][td]vk_Right = 39[/td][td]vk_Down = 40[/td][/tr]
[tr][td]vk_PrintScreen = 44 [/td] [td]vk_Insert = 45[/td][td]vk_Delete = 46[/td][/tr]

[tr][td]-------------------------[/td] [td]-------------------------[/td] [td]-------------------------[/td][/tr]

[tr][td]vk_0 = 48[/td] [td]vk_1 = 49[/td] [td]vk_2 = 50[/td][/tr]
[tr][td]vk_3 = 51[/td] [td]vk_4 = 52[/td] [td]vk_5 = 53[/td][/tr]
[tr][td]vk_6 = 54[/td] [td]vk_7 = 55[/td] [td]vk_8 = 56[/td][/tr]
[tr][td]vk_9 = 57[/td] [td][/td] [td][/td][/tr]

[tr][td]-------------------------[/td] [td]-------------------------[/td] [td]-------------------------[/td][/tr]

[tr][td]vk_A = 65[/td] [td]vk_B = 66[/td] [td]vk_C = 67[/td][/tr]
[tr][td]vk_D = 68[/td] [td]vk_E = 69[/td] [td]vk_F = 70[/td][/tr]
[tr][td]vk_G = 71[/td] [td]vk_H = 72[/td] [td]vk_I = 73[/td][/tr]

[tr][td]-------------------------[/td] [td]-------------------------[/td] [td]-------------------------[/td][/tr]

[tr][td]vk_J = 74[/td] [td]vk_K = 75[/td] [td]vk_L = 76[/td][/tr]
[tr][td]vk_M = 77[/td] [td]vk_N = 78[/td] [td]vk_O = 79[/td][/tr]
[tr][td]vk_P = 80[/td] [td]vk_Q = 81[/td] [td]vk_R = 82[/td][/tr]
[tr][td]vk_S = 83[/td] [td]vk_T = 84[/td] [td]vk_U = 85[/td][/tr]
[tr][td]vk_V = 86[/td] [td]vk_W = 87[/td] [td]vk_X = 88[/td][/tr]
[tr][td]vk_Y = 89[/td] [td]vk_Z = 90[/td] [td][/td][/tr]

[tr][td]-------------------------[/td] [td]-------------------------[/td] [td]-------------------------[/td][/tr]

[tr][td]vk_LWin = 91 *[/td] [td]vk_RWin = 92 *[/td] [td]vk_Apps = 93 *[/td][/tr]
[tr][td]vk_NumPad0 = 96[/td] [td]vk_NumPad1 = 97[/td] [td]vk_NumPad2 = 98[/td][/tr]
[tr][td]vk_NumPad3 = 99[/td] [td]vk_NumPad4 = 100[/td] [td]vk_NumPad5 = 101[/td][/tr]
[tr][td]vk_NumPad6 = 102[/td] [td]vk_NumPad7 = 103[/td] [td]vk_NumPad8 = 104[/td][/tr]
[tr][td]vk_NumPad9 = 105[/td] [td]vk_Multiply = 106[/td] [td]vk_Add = 107[/td][/tr]
[tr][td]vk_Subtract = 109[/td] [td]vk_Decimal = 110[/td] [td]vk_Divide = 111[/td][/tr]

[tr][td]-------------------------[/td] [td]-------------------------[/td] [td]-------------------------[/td][/tr]

[tr][td]vk_F1 = 112[/td] [td]vk_F2 = 113[/td] [td]vk_F3 = 114[/td][/tr]
[tr][td]vk_F4 = 115[/td] [td]vk_F5 = 116[/td] [td]vk_F6 = 117[/td][/tr]
[tr][td]vk_F7 = 118[/td] [td]vk_F8 = 119[/td] [td]vk_F9 = 120[/td][/tr]
[tr][td]vk_F10 = 121[/td] [td]vk_F11 = 122[/td] [td]vk_F12 = 123[/td][/tr]
[tr][td]vk_F13 = 124[/td] [td]vk_F14 = 125[/td] [td]vk_F15 = 126[/td][/tr]
[tr][td]vk_F16 = 127[/td] [td][/td] [td][/td][/tr]

[tr][td]-------------------------[/td] [td]-------------------------[/td] [td]-------------------------[/td][/tr]

[tr][td]vk_NumLock = 144[/td] [td]vk_ScrollLock = 145[/td] [td]vk_LShift = 160 **[/td][/tr]
[tr][td]vk_RShift = 161 **[/td] [td]vk_LControl = 162 **  [/td] [td]vk_RControl = 163 **[/td][/tr]
[tr][td]vk_LAlt = 164 **[/td] [td]vk_RAlt = 165 **[/td] [td]vk_SemiColon = 186[/td][/tr]
[tr][td]vk_Equals = 187[/td] [td]vk_Comma = 188[/td] [td]vk_UnderScore = 189[/td][/tr]
[tr][td]vk_Period = 190[/td] [td]vk_Slash = 191[/td] [td]vk_BackSlash = 220[/td][/tr]
[tr][td]vk_RightBrace = 221  [/td] [td]vk_LeftBrace = 219[/td] [td]vk_Apostrophe = 222[/td][/tr]
[tr][td]-------------------------[/td] [td]-------------------------[/td] [td]-------------------------[/td][/tr]

[/table]


espero que les pueda servir de ayuda



  • 0

#2 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 13.816 mensajes
  • LocationMéxico

Escrito 13 marzo 2010 - 09:21

Hola luk,

Me tome la libertad de acomodar un poco la tabla de teclas virtuales.

Salud OS
  • 0

#3 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.007 mensajes
  • LocationSanto Domingo

Escrito 13 marzo 2010 - 09:42

Pues yo los veo casi iguales, no debiste molestarte.  :D :D,  mentira, gracias y la proxima vez me tomare el tiempo para colocarlo correctamente.


Pd. La proxima vez arregla el mio, te prometo que no me voy a sentir mal, ya que hasta los grandes escritores tienen personas que les corrigen sus obras. :smiley: :-#
  • 0

#4 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 13.816 mensajes
  • LocationMéxico

Escrito 13 marzo 2010 - 09:45

Pd. La proxima vez arregla el mio, te prometo que no me voy a sentir mal, ya que hasta los grandes escritores tienen personas que les corrigen sus obras. :smiley: :-#


Va, cambiemos código :D :D :D

Salud OS
  • 0

#5 German

German

    Member

  • Miembros
  • PipPip
  • 40 mensajes

Escrito 14 marzo 2010 - 07:08

La definicion de las constantes VK_* se encuentra en la unidad LCLType, asi que solo basta hacer uses LCLType para utilizarlas.
Saludos.
  • 0

#6 luk2009

luk2009

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2.007 mensajes
  • LocationSanto Domingo

Escrito 14 marzo 2010 - 07:39

Gracias german, que bueno que estas con nosotros para ayudarnos a aprender.
  • 0