用windowsmediaplayer控件播放媒体时,要暂停在指定位置.现在用的是定时器,每隔0.1~0.2秒检查播放位置,判断是否到过指定位置,再进行暂停。
但由于定时器不准,而且是间隔进行检查的,所以常常停在指定位置偏后0.1~0.2秒的地方?
请问如何才能精确暂停在指定时间点?

解决方案 »

  1.   

    Private Sub Command1_Click()
    MsgBox WindowsMediaPlayer1.Controls.currentPosition
    End SubPrivate Sub Form_Load()
    WindowsMediaPlayer1.URL = "C:\vb.mp3"
    'WindowsMediaPlayer1.openPlayer "C:\vb.mp3"'有画面时用
    ' WindowsMediaPlayer1.settings.playCount = 2
    End Sub
      

  2.   

    你播放的时候,肯定要用Timer计时器,可以在Timer计时器中进行;
    但是,你不一定能捕捉到你指定的时间,就是说你不能在指定的时间让播放器暂停,
    反过来说,你可以随时暂停,并捕捉到瞬间暂停的时间。
      

  3.   

    你试一下上面一楼的代码,WindowsMediaPlayer1.Controls.currentPosition 记录的时间很精确,如果它等于你的设定时间,进行你自己的操作就行了
      

  4.   

    好像没有什么好方法 ,只好还是用timer 了