私は WinRT アプリケーションを開発しています。KeyRoutedEventArgs を持つ OnKeyDown メソッドをオーバーライドしました。
args.key などの引数からキーを取得しようとすると、Numpad4、Numpad5 (Numpad が押されている場合) または Number4、Number5 の Numbers are Pressed が返されます。
できるだけ最善の方法で 4 または 5 と言う数字だけを取得するにはどうすればよいですか?
私は WinRT アプリケーションを開発しています。KeyRoutedEventArgs を持つ OnKeyDown メソッドをオーバーライドしました。
args.key などの引数からキーを取得しようとすると、Numpad4、Numpad5 (Numpad が押されている場合) または Number4、Number5 の Numbers are Pressed が返されます。
できるだけ最善の方法で 4 または 5 と言う数字だけを取得するにはどうすればよいですか?
http://msdn.microsoft.com/en-au/library/windows/apps/windows.system.virtualkeyに基づく
int number = -1 ; //invalid value
if (event.Key >= VirtualKey.Number0 && event.Key <= VirtualKey.Number9)
{
number = event.Key-VirtualKey.Number0;
}
if (event.Key >= VirtualKey.NumberPad0 && event.Key <= VirtualKey.NumberPad9)
{
number = event.Key-VirtualKey.NumberPad0 ;
}
if(number!=-1)
{
//enter code here
}