2010-08-03 6 views
0

Как я могу заставить VB.net работать, что я нажал + - */в событиях Keydown? На данный момент я использую Select Case:Keydown event: numpad +, */buttons

Select Case e.Key 
      'Numpad Numbers Keydown Events' 
      Case Key.NumPad0 
       Display.Append("0") 
       txtAnswer.Text = Display.ToString 
      Case Key.NumPad1 
       Display.Append("1") 
       txtAnswer.Text = Display.ToString 

Однако, я не могу найти ключ. чтобы работать с кнопками функции numpad.

я попытался с помощью:

Case AscW(Chr(107)) 
       Display.Append("+") 
       txtAnswer.Text = Display.ToString 

Но это не сработало, кто-нибудь может помочь?

Благодаря

Ник

ответ

1

Вы пробовали Key.Add/Key.Subtract/Key.Multiply/Key.Divide? Если это не работает (или те, которые не соответствуют клавишам C# .net) Попробуйте найти те, которые были префиксными с помощью «Oem».

+0

Спасибо, друг! что сработало =] – Nick

+0

Без проблем, рад, что я мог бы помочь: D – Lunin

1

Я не знаю, с верхней части моей головы, но если бы я должен был узнать, что я бы поставил точку останова в функции, запустите программу и нажмите каждый из ключей. Это вызовет точку останова, и я могу проверить переменную e.Key с помощью отладчика, чтобы узнать, какой именно ключ нажал.

+0

Это хорошая идея Джоэл, однако функция часов не работает на «е», она просто остается в System.Windows.Input.KeyEventArgs – Nick

+0

@Nick - она ​​должна работать на e, и вы можете добавить свои собственные элементы в список наблюдения или даже просто наведите указатель мыши на переменную, чтобы увидеть ее значение. –