zoukankan      html  css  js  c++  java
  • [Windows8开发] 小知识点(VirtualKey)

    有时候开发为了用户方便,设置键盘与输入按钮绑定,比如输入时,自定义键盘1234,当用户想直接敲击实体键盘或者虚拟键盘时,依然显示1234,这时候就需要用VirtualKey了。下面就是一个简单的例子。

    首先在xaml中添加事件Page_KeyDown,也就是按下按键后触发的事件,然后转到C#添加如下代码:

    private void Page_KeyDown(object sender, KeyRoutedEventArgs e)
    {
                
         if (e.Key == VirtualKey.Back) //按下Backspace键
         {
              //执行代码
         }
    }

    中文MSDN中列举了许多VirtualKey的Code,网址: http://msdn.microsoft.com/zh-cn/library/windows/apps/xaml/windows.system.virtualkey.aspx

    枚举到165。可是在我开发的时候发现,减号的Key 是189,加号是Shift和187(也就是按下Shift后再按等号,所以等号是187),这两个数都超过了165怎么办?不用急,直接写上

    if(e.Key.ToString()=="189")就可以了!当然如果是组合键,也就是需要先按Shift的话,那么就要做判断了,设置一个变量来控制按下Shift后下一个按钮来判断用户到底想按哪个键(如果按下的是这类组合键后系统会重新执行Page_Down())。

    if (e.Key == VirtualKey.Shift)
    {
        jjcc = 1;
    }
    if (e.Key.ToString() == "187")
    {
        if (jjcc == 1)
        { plus(null, null); jjcc = 0; } //按下加号(Shift+等号)
        else
        { equal(null, null); jjcc = 0; }//按下等号
    }

    检测大写键是否开启:

    if (Window.Current.CoreWindow.GetKeyState(Windows.System.VirtualKey.NumberKeyLock) == Windows.UI.Core.CoreVirtualKeyStates.Locked)
    {
    //Code
    }
  • 相关阅读:
    poj 2029 Get Many Persimmon Trees 夜
    poj 1191 棋盘分割 夜
    DOM (四)
    div拖拽, onmousedown ,onmousemove, onmouseup
    闭包理解
    DOM(一)
    内存溢出与内存泄漏
    div随鼠标移动而移动(滚动条)
    对象继承模式
    DOM(二)
  • 原文地址:https://www.cnblogs.com/zetianchiang/p/2744727.html
Copyright © 2011-2022 走看看