vc++使用ActiveMovie控件自制播放器心得
在本文中,作者赵博闻分享了使用VC++和ActiveMovie控件开发自制播放器的心得体会。ActiveMovie是微软Windows Media Technologies的一部分,允许开发者创建多媒体应用程序,支持视频和音频播放。 1. **文件打开**: 在播放器中,作者通过`CFileDialog`类实现“打开文件”功能,让用户能够选择要播放的多媒体文件。选择了文件后,文件名会被显示在播放列表中。通过`dlg.GetPathName()`获取选中的文件路径,并用`m_ActiveMovie.SetFileName(pathName)`设置ActiveMovie控件的文件源。 2. **初始化控件**: 在对话框类的构造函数中,初始化了一些变量,如`m_Enable`和`ISPause`,它们可能用于控制播放状态。 3. **播放、暂停、停止**: 虽然文章未详述,但通常会为这些功能添加消息处理函数,例如`OnBtnPlay()`、`OnBtnPause()`和`OnBtnStop()`,分别对应播放、暂停和停止按钮的点击事件。通过调用ActiveMovie控件的相应方法来实现这些功能。 4. **全屏显示**: 同样,全屏显示功能可以通过添加消息处理函数实现,调整窗口大小以适应屏幕。 5. **声音控制**: 播放器可能包含音量调节,这可能通过调整ActiveMovie控件的音量属性或使用其他音频API来实现。 6. **播放进度**: 可能通过滑块控件(CSliderCtrl)展示播放进度,并与ActiveMovie控件的当前位置同步更新。 7. **播放列表**: 播放列表可以是列表视图(CListView)控件,用户可以选择要播放的文件。通过向列表视图添加项目,可以展示多文件播放的功能。 8. **外观定制**: 文章提到可以自定义播放器的外观,包括不规则形状的窗口和按钮。这可能通过自绘技术实现,如覆盖`OnPaint()`函数,使用GDI+或DirectDraw进行绘制。 9. **XP风格**: 提到可以实现XP风格的外观,这可能是指使用Visual Styles API来获得与Windows XP相匹配的用户界面元素。 10. **问题与改进**: 作者指出播放器仍有未实现的功能和存在的问题,希望能得到其他开发者的意见和帮助。这表明这是一个逐步完善的过程,可能涉及错误修复、功能增强等。 这篇文章提供了一个使用VC++和ActiveMovie控件构建基础播放器的起点,对初学者来说具有一定的学习价值。通过扩展这些基础,开发者可以创建更复杂、功能更丰富的媒体播放应用。
剩余15页未读,继续阅读
- zhao_tonglu2012-05-19win7系统怎么运行不了饿。。。
- OnlyForEmail52012-08-14个人感觉MediaPlayer更好用些
- 粉丝: 2
- 资源: 8
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 问题D:城市韧性与可持续发展能力评价.zip
- 伺服系统基于陷波滤波器双惯量伺服系统机械谐振抑制matlab Simulink仿真 1.模型简介 模型为基于陷波滤波器的双惯量伺服系统机械谐振抑制仿真,采用Matlab R2018a Simul
- 基于滑膜控制的差动制动防侧翻稳定性控制,上层通过滑膜控制产生期望的横摆力矩,下层根据对应的paper实现对应的制动力矩分配,实现车辆的防侧翻稳定性控制,通过通过carsim和simulink联合仿真
- (174755032)抽烟、烟雾检测voc数据集
- Starter SINAMICS S120驱动第三方直线永磁同步电机系列视频-调试演示.mp4
- (175601006)51单片机交通信号灯系统设计
- (177422616)80.基于51单片机的交通灯设计【五岔路,左右拐,固定时间】(仿真).rar
- 光伏MMC并网系统(两级式) 交流故障穿越 电网对称 不对称故障 simulink仿真模型 光伏经模块化多电平流器(MMC)并网 1. MMC部分:正负序分离控制+SOGI锁相环 +定直流母线电压控制
- SINAMICS S120驱动第三方直线永磁同步电机系列视频-配置和优化.mp4
- (176102016)MATLAB代码:考虑灵活性供需不确定性的储能参与电网调峰优化配置 关键词:储能优化配置 电网调峰 风电场景生成 灵活性供需不
- 基于二阶RC模型 自适应无迹卡尔曼滤波算法(AUKF)锂电池SOC估计,噪声系数自适应 Matlab程序 仿真模型建模数据mat Sci一篇参考文献
- 新建 Microsoft Word 文档
- (176721246)200行C++代码写一个Qt俄罗斯方块
- Oracle期末复习题:选择题详解与数据库管理技术
- Unity视频插件AVPro的Win端2.2.3
- (3292010)Java图书管理系统(源码)