locked
C# 如何 屏蔽 talk键 (打电话的那个键) RRS feed

  • 问题

  • C# 如何 屏蔽 talk键 (打电话的那个键)

                                      这个键是在机身上的.. 不是软键~  我是想让这个键在我的程序中.没有效果. 现在的状态是.. 在我的程序运行的时候. 按下talk键. 还是会进入拨号界面..   如何屏蔽???
    2010年3月7日 5:47

答案

  • 我们可以发SHCMBM_OVERRIDEKEY消息用vk_TTalk参数,具体请看:
    http://msdn.microsoft.com/en-us/library/aa454997.aspx

    这样可以把talk按键消息定向到wm_hotkey中来,SDK中有一个使用SHCMBM_OVERRIDEKEY消息的示例,具体请参考它,只要把参数换成vk_ttalk就可以了:
    C:\Program Files\Windows Mobile 6 SDK\Samples\Common\CPP\Win32\FullScreen
    Please remember to mark the replies as answers if they help and unmark them if they provide no help
    2010年3月10日 9:45

全部回复

  • hello,easyfrog

    关于这个问题,可以参考一下这篇文章:

    利用HardwareButton操作Windows Mobile的硬件按钮

    主要是利用Microsoft.WindowsCE.Forms中的HardwareButton类来重写 Pocket PC 硬件按钮的功能。

    希望对你有用。


    施炯
    2010年3月8日 2:04
  •      还是MVP哥牛呀... 感谢 dearsj001的热情帮助....    真应该好好跟 你学学... 我没有系统的学过编程. 上学的时候 学过一年C     以后都是自学的...  所以知识面还是不够呀~~~..

          能再帮我看看我的这个问题吗???   谢谢~
                                 http://social.microsoft.com/Forums/zh-CN/1729/thread/f25ea354-c8af-446c-b400-19c924e8cd67
    2010年3月8日 2:55
  •   这个 HardwareButton 类.. 只能得到  ApplicationKey1---ApplicationKey6  这样的枚举...   我不知道这有什么意义.... 怎么才能让这个枚举与 硬件上的按键相对应呢???   我知道 Talk 键的 keyValue=114  ...   这是不是就可以直接用 Forms 里的 Keyup事件 就可以判断呢???    
    2010年3月9日 7:45
  •     我试了试.. 我在没有用HardwareKey 这个类的情况下..在知道Talk键是的KeyValue=114的情况下. 也是可以得到这个键的...   

        private void Form1_KeyUp(object sender, KeyEventArgs e)
            {
                   if (e.KeyValue == 114)
                   {
                         MessageBox.Show("你按了Talk键");
                    }

             }

           运行的结果虽然也 出现了我写的对话框.. 但还是同样的出现了  电话拔号面板.....    我想要的是:: 怎么才能不出现这个拔号面板呢??????? ?????  MVP哥.. 帮帮我.. 急呀.

    2010年3月9日 15:22
  • 哎,看样子,还是需要呼唤大牛Guang-Ming Bian现身解决这个问题呀。 我再帮你找找相关资料看看。
    施炯
    2010年3月10日 6:14
  • 感谢 dearsj001 MVP 哥的帮助...    希望能得到解决~
    2010年3月10日 7:28
  • 我们可以发SHCMBM_OVERRIDEKEY消息用vk_TTalk参数,具体请看:
    http://msdn.microsoft.com/en-us/library/aa454997.aspx

    这样可以把talk按键消息定向到wm_hotkey中来,SDK中有一个使用SHCMBM_OVERRIDEKEY消息的示例,具体请参考它,只要把参数换成vk_ttalk就可以了:
    C:\Program Files\Windows Mobile 6 SDK\Samples\Common\CPP\Win32\FullScreen
    Please remember to mark the replies as answers if they help and unmark them if they provide no help
    2010年3月10日 9:45