C#视频播放器

本文详细介绍了如何在C#中使用Windows Media Player控件,包括添加控件、设置属性、控制播放状态以及播放器的基本操作,如播放、暂停、停止、音量控制等。同时,文章还讨论了播放状态的枚举值和播放列表的管理。
摘要由CSDN通过智能技术生成
对于视频播放器来说,最重要的功能,莫过于播放视频文件了这就要用到VS自带的控件——Windows Media Player

windows media player

  • 将Windows Media Player(以下简称wmp)控件添加到工具箱中
    1.选择工具箱项
    2.选择com组件项

    3.找到wmp,将其前面打钩即可在工具箱中找到wmp
  • 添加wmp至已创建好的窗体中
  • 下面说一说wmp一些属性
    URL:String——指定媒体位置,本机或网络地址
    uiMode:String——播放器界面模式,可为Full, Mini, None, Invisible(不计大小写)
    playState:int—— 播放状态。这个属性改变时同时引发PlayStateChange事件与StateChange事件。取值范围为枚举型:WMPLib.WMPPlayState,它的成员如下:
      wmppsUndefined = 0;   //未知状态
      wmppsStopped = 1;    //播放停止
      wmppsPaused = 2;     //播放暂停
      wmppsPlaying = 3;     //正在播放
      wmppsScanForward = 4;   //向前搜索
      wmppsScanReverse = 5;   //向后搜索
      wmppsBuffering = 6;     //正在缓冲
      wmppsWaiting = 7;      //正在等待流开始
      wmppsMediaEnded = 8;    //播放流已结束
      wmppsTransitioning = 9;    //准备新的媒体文件
      wmppsReady = 10;      //播放准备就绪
      wmppsReconnecting = 11;   //尝试重新连接流媒体数据
      wmppsLast = 12;       //上一次状态,状态没有改变
      在PlayStateChange中写代码可以防止播放rmvb等非默认类型的问题(用wmppsReady)。
    enableContextMenu:Boolean——启用/禁用右键菜单
    fullScreen:boolean——是否全屏显示

  • 播放器基本控制
    Ctlcontrols.play; 播放
    Ctlcontrols.pause; 暂停
    Ctlcontrols.stop; 停止
    Ctlcontrols.currentPosition:double; 当前进度
    Ctlcontrols.currentPositionString:string; 当前进度,字符串格式。如“00:23”
    Ctlcontrols.fastForward; 快进
    Ctlcontrols.fastReverse; 快退
    Ctlcontrols.next; 下一曲
    Ctlcontrols.previous; 上一曲

  • 播放器基本设置[settings] wmp.settings

    settings.volume:integer; 音量,0-100
    settings.autoStart:Boolean; 是否自动播放
    settings.mute:Boolean; 是否静音
    settings.playCount:integer; 播放次数
    //顺序播放
    wmp.settings.setMode(“shuffle”, False)
    //随机播放
    wmp.settings.setMode(“shuffle”, True)
    //循环播放
    wmp.settings.setMode(“loop”, True)

  • 当前媒体属性[currentMedia] wmp.currentMedia

    currentMedia.duration:double; 媒体总长度
    currentMedia.durationString:string; 媒体总长度,字符串格式。如“03:24”
    currentMedia.getItemInfo(const string); 获取当前媒体信息”Title”=媒体标题,”Author”=艺术家,”Copyright”=版权信息,”Description”=媒体内容描述,”Duration”=持续时间(秒),”FileSize”=文件大小,”FileType”=文件类型,”sourceURL”=原始地址
    currentMedia.setItemInfo(const string); 通过属性名设置媒体信息
    currentMedia.name:string; 同 currentMedia.getItemInfo(“Title”)

  • 当前播放列表属性[currentPlaylist] wmp.currentPlaylist

    currentPlaylist.count:integer; 当前播放列表所包含媒体数
    currentPlaylist.Item[integer]; 获取或设置指定项目媒体信息,其子属性同wmp.currentMedia
    axWindowsMediaPlayer1.currentMedia.sourceURL; //获取正在播放的媒体文件的路径
    axWindowsMediaPlayer1.currentMedia.name; //获取正在播放的媒体文件的名称
    axWindowsMediaPlayer1.Ctlcontrols.Play          播放
    axWindowsMediaPlayer1.Ctlcontrols.Stop          停止
    axWindowsMediaPlayer1.Ctlcontrols.P

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值