.Net Compact Framework - 为按钮单击事件添加振动

时间:2010-01-16 09:47:50

标签: .net windows-mobile compact-framework button

我想知道是否有人可以向我提供为按钮的点击事件添加振动的提示。我一直在环顾四周,但只使用窗口注册表找到了类似的例子 - 但是如果可能的话,我宁愿避免使用注册表。

任何可以提供一些示例代码来实现此目的的人(C#或VB.Net)?

谢谢。

更新: jball提供的代码就像一个魅力。 为了实现短暂的振动,我按如下方式调用了代码:

Private Sub btnMute_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _  
handles btnMute.Click
            SetVibrate(1)
            Thread.Sleep(50) 'how long should the vibration last
            SetVibrate(0)
end sub

工作真的很棒!

1 个答案:

答案 0 :(得分:2)

可以通过LED API访问它。来自here

  

在大多数设备上设置振动   到LED设备1。

以下是来自同一来源的示例代码。

Private Structure NLED_SETTINGS_INFO
    Public LedNum As Integer
    Public OffOnBlink As Integer
    Public TotalCycleTime As Integer
    Public OnTime As Integer
    Public OffTime As Integer
    Public MetaCycleOn As Integer
    Public MetaCycleOff As Integer
End Structure

<DllImport("Coredll")> _
Private Shared Function NLedSetDevice(ByVal deviceId As Integer, ByRef info 
                                            As NLED_SETTINGS_INFO) As Boolean
End Function

Private Shared Sub SetVibrate(ByVal state As Boolean)
    Dim info As New NLED_SETTINGS_INFO()
    info.LedNum = 1
    info.OffOnBlink = If(state, 1, 0)
    NLedSetDevice(1, info)
End Sub