1

フォームに埋め込まれた Windows Media Player オブジェクトがあり、ビデオを自動再生するように設定されています。
そのビデオを永遠にループさせたいのですが、方法がわかりません!

デザイン ビューでオブジェクトを右クリックすると、設定が表示され、「再生回数」が含まれますが、0 に設定しても機能しません。プロパティ ウィンドウを閉じるとすぐに 1 に戻ります。また、-1 も受け付けません。最大設定は 999 ですが、ビデオは数時間ループするだけなので十分ではありません。

これは私がコントロールを操作する方法です:

    wmpPlayer.Ctlcontrols.play()

    wmpPlayer.Ctlcontrols.pause()

    wmpPlayer.URL = ofdOpen.FileName 'Play

  ' This does NOT work to make repeat forever!...
  ' wmpPlayer.settings.playCount() = 0 
  • 次のように「PlayStateChanged」イベントをキャッチしようとしました:

    Private Sub wmpPlayer_PlayStateChange_1(sender As Object, e As AxWMPLib._WMPOCXEvents_PlayStateChangeEvent) Handles wmpPlayer.PlayStateChange
    If e.newState = 8 Then
        wmpPlayer.Ctlcontrols.play()
    End If
    '0 = Undefined
    '1 = Stopped (by User)
    '2 = Paused
    '3 = Playing
    '4 = Scan Forward
    '5 = Scan Backwards
    '6 = Buffering
    '7 = Waiting
    '8 = Media Ended
    '9 = Transitioning
    '10 = Ready
    '11 = Reconnecting
    '12 = Last
    End Sub 
    

しかし、この方法が常に機能するかどうかはわかりません。プログラムを 2 台のマシンで一晩実行したままにしましたが、今朝は 1 台がまだ実行されていましたが、もう 1 台は何らかの理由で停止していました。

4

2 に答える 2

5

そのビデオを永遠にループさせたいのですが、方法がわかりません!

設定で「ループ」モード プロパティを true に設定するだけです。

wmpPlayer.settings.setMode("Loop", True)
于 2013-11-14T23:33:43.557 に答える
0

またはExcel vbaで試してください

WindowsMediaPlayer1.settings.setMode "Loop", True
于 2022-02-03T15:23:19.890 に答える