Recent

Author Topic: Assign HotKey to Button  (Read 11995 times)

fredycc

  • Sr. Member
  • ****
  • Posts: 265
Assign HotKey to Button
« on: April 10, 2010, 08:33:48 pm »
Hello again; I can't assign a hotkey to button in lazarus, how ca I do this?; or maybe when user press F1 call to any form  :-\. I'll appreciate your help.

typo

  • Hero Member
  • *****
  • Posts: 3051
Re: Assign HotKey to Button
« Reply #1 on: April 10, 2010, 09:24:34 pm »
In Delphi it is possible to write in the OnKeyDown event handler:

Code: [Select]
if key = VK_F12 then go;      

But it seems that Lazarus does not define virutal keys.

typo

  • Hero Member
  • *****
  • Posts: 3051
Re: Assign HotKey to Button
« Reply #2 on: April 10, 2010, 09:38:37 pm »
But if you write:

Code: [Select]
if key = 112 then go;
in that event handler I think you will have the F1 key working.

{ Virtual Key codes  }
     VK_LBUTTON = 1;
     VK_RBUTTON = 2;
     VK_CANCEL = 3;
     VK_MBUTTON = 4;
     VK_BACK = 8;
     VK_TAB = 9;
     VK_CLEAR = 12;
     VK_RETURN = 13;
     VK_SHIFT = 16;
     VK_CONTROL = 17;
     VK_MENU = 18;
     VK_PAUSE = 19;
     VK_CAPITAL = 20;
     VK_ESCAPE = 27;
     VK_SPACE = 32;
     VK_PRIOR = 33;
     VK_NEXT = 34;
     VK_END = 35;
     VK_HOME = 36;
     VK_LEFT = 37;
     VK_UP = 38;
     VK_RIGHT = 39;
     VK_DOWN = 40;
     VK_SELECT = 41;
     VK_PRINT = 42;
     VK_EXECUTE = 43;
     VK_SNAPSHOT = 44;
     VK_INSERT = 45;
     VK_DELETE = 46;
     VK_HELP = 47;
     VK_0 = 48;
     VK_1 = 49;
     VK_2 = 50;
     VK_3 = 51;
     VK_4 = 52;
     VK_5 = 53;
     VK_6 = 54;
     VK_7 = 55;
     VK_8 = 56;
     VK_9 = 57;
     VK_A = 65;
     VK_B = 66;
     VK_C = 67;
     VK_D = 68;
     VK_E = 69;
     VK_F = 70;
     VK_G = 71;
     VK_H = 72;
     VK_I = 73;
     VK_J = 74;
     VK_K = 75;
     VK_L = 76;
     VK_M = 77;
     VK_N = 78;
     VK_O = 79;
     VK_P = 80;
     VK_Q = 81;
     VK_R = 82;
     VK_S = 83;
     VK_T = 84;
     VK_U = 85;
     VK_V = 86;
     VK_W = 87;
     VK_X = 88;
     VK_Y = 89;
     VK_Z = 90;
     VK_LWIN = 91;
     VK_RWIN = 92;
     VK_APPS = 93;
     VK_NUMPAD0 = 96;
     VK_NUMPAD1 = 97;
     VK_NUMPAD2 = 98;
     VK_NUMPAD3 = 99;
     VK_NUMPAD4 = 100;
     VK_NUMPAD5 = 101;
     VK_NUMPAD6 = 102;
     VK_NUMPAD7 = 103;
     VK_NUMPAD8 = 104;
     VK_NUMPAD9 = 105;
     VK_MULTIPLY = 106;
     VK_ADD = 107;
     VK_SEPARATOR = 108;
     VK_SUBTRACT = 109;
     VK_DECIMAL = 110;
     VK_DIVIDE = 111;
     VK_F1 = 112;
     VK_F2 = 113;
     VK_F3 = 114;
     VK_F4 = 115;
     VK_F5 = 116;
     VK_F6 = 117;
     VK_F7 = 118;
     VK_F8 = 119;
     VK_F9 = 120;
     VK_F10 = 121;
     VK_F11 = 122;
     VK_F12 = 123;
     VK_F13 = 124;
     VK_F14 = 125;
     VK_F15 = 126;
     VK_F16 = 127;
     VK_F17 = 128;
     VK_F18 = 129;
     VK_F19 = 130;
     VK_F20 = 131;
     VK_F21 = 132;
     VK_F22 = 133;
     VK_F23 = 134;
     VK_F24 = 135;     
« Last Edit: April 10, 2010, 09:42:39 pm by typo »

User137

  • Hero Member
  • *****
  • Posts: 1791
    • Nxpascal home
Re: Assign HotKey to Button
« Reply #3 on: April 10, 2010, 09:52:49 pm »
Virtual keycodes in Lazarus are found in unit LCLType. You can add it in uses list.

typo

  • Hero Member
  • *****
  • Posts: 3051
Re: Assign HotKey to Button
« Reply #4 on: April 10, 2010, 10:07:40 pm »
Thanks.

fredycc

  • Sr. Member
  • ****
  • Posts: 265
Re: Assign HotKey to Button
« Reply #5 on: April 11, 2010, 04:55:57 am »
Thank you very much; works perfect!

 

TinyPortal © 2005-2018