0

Как поднять событие нажатия клавиши для специального символа для ввода расширенных символов ASCII?Как поднять события клавиатуры для специальных символов/расширенный ASCII? (Visual Basic 6)

Пример фрагмента кода:

keybd_event vbKeyE, 0, KEYEVENTF_KEYDOWN, 0

Есть ли какая-то альтернатива, так что я могу использовать KeyCode для специального характера [Э.Г. Chr $ (122)] вместо предопределенных и ограниченных VbKeyA, VbKeyB, VbKeyC ..... и т. Д.?

Жду вашего ответа.

С уважением,

Шанкар

ответ

0

Вот пример, который, кажется, чтобы покрыть вопрос:

Private Sub Text1_KeyPress (KeyAscii As Integer) 
    If KeyAscii = 8 Then MsgBox "You pressed the BACKSPACE key." 
End Sub 

Он был взят из here.

+0

Hello Njak32. Благодарю. Но я хочу набирать специальные символы с моей клавиатуры (так как я хочу использовать шрифт локального языка для фонетического ввода). Предположим, что если я нажимаю «А» с клавиатуры, он должен печатать Chr $ (243) или Chr $ (199) и т. Д. Ожидание вашего ответа. С уважением. – Shankar

+0

Я вижу ... это кажется намного сложнее, если я правильно понимаю, поскольку вам тогда необходимо сопоставить каждый ключ на вашей клавиатуре с его фонетическим коллегой на любом языке, который вы используете. Мое предложение состояло в том, чтобы сопоставить каждый ключ с переменной, содержащей желаемый результат, и, возможно, сохранить ее в массиве. Поэтому на каждом KeyPress вы выводите элемент массива, хранящийся в этом конкретном коде ASCII. – ajnatural

+0

Спасибо Njak. Не могли бы вы привести несколько фрагментов кода в качестве примера? – Shankar

0
if keyascii=27 then 
if (msgbox"do you want to exit?",vbokcancel,"information")=vbok then 
end 
end if 
end if