Как да използвате натискане на клавиш събитие в целево на ключ ЕТИКЕТА


Резюме


Много фирми използват етикет на ключ за програми или процедури в програми, които да се изпълняват при натискане на определен клавиш (обикновено функция ключ). Обаче ако присвояване на ключ етикет за контрола на формуляр, по-добра алтернатива може да използвате натискане случай тази контрола.

Допълнителна информация


Натискане на клавиш събитие е налична за следните контроли за формуляри:
Квадратче за отметка, разгъващ се списък, CommandButton, редактора, форма, падащ списък, OptionButton, брояч, текстово поле
Това е възможно да използвате това събитие, за да проверите за печат на определен ключ. При използване на KeyPress събитие за извършване на действие, въз основа на функционален клавиш, функционален клавиш стойност трябва да се използва, както е показано в таблицата:


Key Alone Shift Ctrl Alt
------------------------------------
F1 28 84 94 104
F2 -1 85 95 105
F3 -2 86 96 106
F4 -3 87 97 107
F5 -4 88 98 108
F6 -5 89 99 109
F7 -6 90 100 110
F8 -7 91 101 111
F9 -8 92 102 112
F10 -9 93 103 113
F11 133 135 137 139
F12 134 136 138 140
За повече информация относно ключови стойности вижте функцията INKEY() във Visual FoxPro помощен файл.

Стъпка по стъпка пример

Следните стъпки показват как да използвате натискане случай.


  1. Създаване на формуляр и поставете текстово поле в него.
  2. В свойството ControlSource на текстовото поле, въведете mykey (или друга променлива, която може да предпочетете).
  3. Поставете следния код в KeyPress събитие на текстовото поле:
       LPARAMETERS nKeyCode, nShiftAltCtrl
    *: The previous line of code is already contained in the KeyPress event
    *: by default.
    DO CASE

    CASE nKeyCode = 28
    WAIT WINDOW "The F1 Key has been pressed" NOWAIT
    mykey = "F1 Key"
    ThisForm.Refresh

    CASE nKeyCode = -4
    WAIT WINDOW "The F5 Key has been pressed" NOWAIT
    mykey = "F5 Key"
    ThisForm.Refresh

    ENDCASE
  4. Поставете следния код в събитието зареждане на формуляр:
       CLEAR MACROS
    SET HELP OFF
    *: This will disable FoxPro's default function key assignments.
  5. Поставете следния код в Destroy събитие на формата:
       RESTORE MACROS
    SET HELP ON
    *: This will restore FoxPro's default function key assignments.
  6. Поставете бутон във формуляра и поставете следния код в своите върху събитието:
       ThisForm.Release
  7. Запишете и стартирате формуляра. Ако F1 или F5 клавиш, подходящи ИЗЧАКАЙТЕ ПРОЗОРЕЦА съобщения трябва да се появи и текстовото поле трябва да бъдат актуализирани.