【问题标题】:Problem with Windows Media Player ActiveX control in VBA PowerpointVBA Powerpoint 中的 Windows Media Player ActiveX 控件存在问题
【发布时间】:2019-12-30 02:25:09
【问题描述】:

又是我和我的学校项目。这次我想通过WMP ActiveX使用文件路径将视频插入PowerPoint,所以我画了一个如下:(uiMode设置为"none"

幻灯片放映开始时,我将所有数据从 Excel 文件传输到演示文稿,包括视频的路径。然后我用Slide85.WMP.uiMode = "invisible"隐藏WMP。

到时候,我希望 WMP 以我绘制的原始尺寸和播放的链接视频显示,所以我使用了这些代码:

Slide85.WMP_TT.uiMode = "none"
Slide85.WMP_TT.URL = "C:\inetpub\wwwroot\TT2.mp4"
Slide85.WMP_TT.Controls.Play

已通过更改“属性”选项卡中的设置将视频静音。

然后结果是这样的:

视频仍在播放,但只有声音,这是不可能的,因为我已将控件静音。视频中没有显示任何视觉图像,并且控件的尺寸也发生了变化。

到目前为止,我想不出导致此问题的任何原因。请帮助我,我将不胜感激。

【问题讨论】:

    标签: vba powerpoint activex windows-media-player


    【解决方案1】:

    正如这个微软帮助页面所提到的,你必须在代码中设置高度和宽度参数,以便播放器在触发 uiMode="invisible" 时保留空间:Player.uiMode

    作为替代方案,您可以像以前那样绘制大小,然后使用 VBA 将其隐藏或显示在幻灯片上,代码如下:

    Sub HideWMP()
        Dim oSlide As Slide
        Dim oShape As Shape
        For Each oSlide In ActivePresentation.Slides
            For Each oShape In oSlide.Shapes
                If oShape.Type = msoOLEControlObject Then
                    oShape.Visible = msoTrue
                End If
            Next oShape
        Next oSlide
    End Sub
    

    【讨论】:

    • 感谢您的回答。我已经尝试过了,但仍然存在视频中的视觉图像没有显示而声音仍然显示的问题。但是,当我转到下一张幻灯片并返回时,视频完全显示了图像和声音。有没有办法解决这个问题?
    • 按照我的第二个建议关闭可见性可能会解决不显示视频的问题。
    • 等等,这似乎没有任何意义...为什么我要在需要显示视频时关闭可见性?
    • 绘制视频控件后,您必须先使用 oShape.Visible.msoFalse 将其隐藏。然后在运行时,您将使用上面的宏显示视频。
    • 现在还有一个问题。我用这个 ``` Slide85.WMP_videoTT.settings.mute = True ``` 来静音,它会静音整个应用程序。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-11
    • 1970-01-01
    相关资源
    最近更新 更多