科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件用Media Player设计个性化媒体播放器

用Media Player设计个性化媒体播放器

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文主要介绍了对Windows Media Player控件的使用方法,并在此基础上完成个性化媒体播放程序的设计实现。

作者:电子科技集团公司第二十二研究所 来源:天极网 2007年10月19日

关键字: Media Player 个性化 媒体播放器

  • 评论
  • 分享微博
  • 分享邮件
摘要:本文主要介绍了对Windows Media Player控件的使用方法,并在此基础上完成个性化媒体播放程序的设计实现。

  关键字:ActiveX控件;多媒体;窗体半透明;热键

  引言

  多媒体播放软件现在几乎成为每一台家用计算机的装机必备软件,比较流行的有RealOne Player、Windows Media Player以及国产软件金山影霸等等,通过这些软件能够播放RM、RMVB、MP3、MPEG、DAT等多种格式的多媒体文件。虽然这些商业软件在功能上已经做的相当完备,但由于其产品开发是面向大多数普通消费者的,正所谓众口难调,这类软件很难做到符合每一个消费者的口味。而作为一名程序员,完全可以利用自身的技术优势来对其进行改造,以设计出为自己量身订做的媒体播放软件,改造后的软件在使用时将更符合自己的使用习惯。本文即以Windows Media Player 9.0为例讲述如何将其改造为个性化的媒体播放软件。

  对Windows Media Player控件的基本控制

  在安装了Windows Media Player 9.0后,一个Windows Media Player ActiveX控件也同时被安装到系统并完成注册。该控件为开发人员提供了Windows Media Player 9.0具备的绝大部分功能,能够通过该控件比较轻松的实现对Windows Media Player 9.0的二次开发。

  为使用该控件,首先要将其添加到工程。点击“Project”下“Add to Project”弹出的“Components and Controls…”子菜单,并从弹出对话框中进入“Registered ActiveX Controls”目录查找并添加Windows Media Player控件到工程。这时以CWMP开头的17个类将被添加到工程。在资源视图中将控件拖动到用来播放多媒体的对话框上并通过ClassWizard将控件与CWMPPlayer4类对象建立关联。CWMPPlayer4类提供了与Windows Media Player控件进行交互的基本方法,而且部分成员函数还能够进一步获取得到其他相关类对象的实例。其中,SetUrl()和close()方法将能够打开和关闭指定的媒体文件。在打开文件之后,能够通过控件上的自带按钮控制媒体的播放、暂停、停止以及对音量的控制等。如果需要在程序中控制媒体的播放,可使用GetControls()函数返回CWMPControls类对象,并进一步调用该对象的play()、stop()、pause()、fastForward()、fastReverse()等方法来完成播放、停止、暂停、快进、快退等相应动作;如果需要在程序中对控件属性进行设置和更改,可在GetSettings()方法返回一个CWMPSettings类的对象后通过其成员函数来完成相应的设置,例如,下面这段代码将把播放音量设置到最大:

m_Setting = m_WMPPlayer.GetSettings();
m_Setting.SetVolume(100);

  目前只是在窗口模式下播放媒体,大部分媒体播放软件都提供有全屏播放功能,Windows Media Player也不例外,只需以TRUE为参数调用CWMPPlayer4类成员函数 SetFullScreen()即可,在全屏模式下可以通过点击鼠标左键或是从右键弹出菜单退回到窗口播放模式。通过对CWMPPlayer4、CWMPSettings和CWMPControls等几个类的使用可以实现Windows Media Player的大部分常规功能,如果需要做进一步的控制,可以在用下面这些函数返回相关类对象后调用相关成员函数来加以实现:

  GetCurrentMedia() 返回CWMPMedia类对象

  GetMediaCollection() 返回CWMPMediaCollection类对象

  GetPlaylistCollection() 返回CWMPPlaylistCollection类对象

  GetNetwork() 返回CWMPNetwork类对象

  GetCurrentPlaylist() 返回CWMPPlaylist类对象

  GetCdromCollection() 返回CWMPCdromCollection类对象

  GetClosedCaption() 返回CWMPClosedCaption类对象

  GetError() 返回CWMPError类对象

  GetDvd() 返回CWMPDVD类对象

  GetPlayerApplication() 返回CWMPPlayerApplication类对象
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章