C#的两个貌似疑难的问题...---(对我来说.)1,在Panel里面,必须按下鼠标左键同时移动鼠标才能发出声音,如果鼠标在Panel里面按下左键,但一直不动的话,停止发出声音.(怎样判断??)
2.怎样获取鼠标的移动速度和声音的播放速度?麻烦回答完整问题.写出详细代码. 

解决方案 »

  1.   

    使用panel的mouseDonw和mouseMoving不就行了吗
    里面有X值和Y值就可以解决你移动的速度的问题啊
      

  2.   

    1, 在鼠标按下时设置一个bool状态位为true.,然后在鼠标MouseMove事件里检查鼠标是不是已按下,如果已经是按下则播放,在鼠标MouseUp事件中设置状态位为false.
    2. 计算鼠标移动的速度, 记录下上一次MouseMove事件发生时的时间Tick同座标 . 然后用本次MouseMove事件发生时的座标与上一个座标计算得出距离,再除以时间就得到速度. 至于 你说的声音播放速度,不明白是怎么什么意思. 也许你要的是任意时刻都能得到鼠标的速度,即使鼠标不动的时候,那可以用Timer来采样(每隔一个时间间隔获取一下鼠标座标,当前时间)应该就可以了.