2017-06-18 319 views
1

當VMP在VBA UserForm中運行時,它會根據剪輯大小和分辨率自動調整大小,而不管WidthHeight屬性是以編程方式設置的。我需要視頻具有固定大小。下面的代碼什麼也不做:vba userform中的Windows Media Player大小

With UserForm1.WindowsMediaPlayer1 
    .URL = "C:\AnyVideo.mp4" 
    .Controls.Play 
    .stretchToFit = True 
    .Width = 500 
    .Height = 300 
    .Top = 0 
    .Left = 0 
End With 

下面的代碼的工作,但使視頻在開始跳躍 - 開始於自己的大小播放,然後跳轉到新的大小,而不是一個專業的外觀。

With UserForm1.WindowsMediaPlayer1 
    .URL = "C:\AnyVideo.mp4" 
    .Controls.Play 
End With 

Timer_1 = Timer + 1 

Do While Timer < Timer_1 
    DoEvents 
Loop 

With UserForm1.WindowsMediaPlayer1 
    .stretchToFit = True 
    .Width = 600 
    .Height = 300 
    .Top = 0 
    .Left = 0 
End With 

我環顧四周,發現什麼都沒有解釋發生了什麼或解決這個問題。任何人都可以幫忙?

回答

1

單擊WindowsMediaPlayer1控件並選擇自定義屬性。您將看到「Windows Media Player屬性」窗口。取消選中「自動啓動」選項。這應該可以解決這個問題。

這就夠了。你不需要做任何其他選項來設置。它不會閃爍或不會看起來跳動等。

您現在可以根據設計模式本身的大小調整WindowsMediaPlayer1控件的大小。如果你仍然想要,你也可以通過代碼來做同樣的事情。在取消選中上述選項後,它應該按照您的預期工作。