- 1
- 0
- 约7.68千字
- 约 10页
- 2018-09-16 发布于湖北
- 举报
MP3Player界面编程技术揭秘.doc
MP3Player界面编程技术揭秘
VC的初学者都会觉得编写一个对话框程序是最简单的,高手是那些会编写单文档、多文档应用程序的人。但是利用VC单文档、多文档模板编写出来的程序非常单调,缺乏个性,能不能用VC编写出一个类似千千静听这样酷界面的程序呢?本文就带你进入这样一个世界!
一、首先创建一个对话框工程:MP3PlayerDemo
注意,由于我们是要自己构造全新的界面,因此在向导模板下,不要做过多的选项,例如去掉“系统菜单”、“关于框”,这样,如图我们就只创建了2个类:应用程序类App、对话框类Dlg。
二、完成播放器程序开发的一些基础编程
1、修改主对话框的属性
打开资源视图,修改主对话框的border属性:None,同时删除主对话框上的多余按钮,如上图。
2、导入播放器所用所有图片
首先,将播放器所用图片全部拷贝到新工程res目录下,如下图。随后,打开VC的资源视图,将这些图片导入,并修改图片ID,如图。
3、为主对话框类添加一个初始化矩形区域的成员函数iniRect()。在播放器程序开发中,我们没有使用VC常规的按钮,因为这种按钮风格太没有个性。在这里,所有的按钮都是采用绘图、检测鼠标点击的位置坐标,响应鼠标事件的方式实现的。因此,首先我们需要定义一个函数,定义各按钮的矩形区域。成员函数iniRect()代码如下:
void CMP3PlayerDemoDlg::iniRect(int left, int top, int width, int height, CRect burect)
{
burect.left = left;
burect.top = top;
burect.right = burect.left+width;
burect.bottom = burect.top+height;
}
4、打开主对话框类的头文件,为按钮及其矩形区域添加2组变量,如下:
//hwp begin
static int m_BItPlayFlg; //Play按键图标从原图标导出位置
static int m_BItStopFlg; //stop按键图标从原图标导出位置
static int m_BItOnUpFlg; //OnUp按键图标从原图标导出位置
static int m_BItNextFlg; //Next按键图标从原图标导出位置
static int m_BItChgSkinFlg; //换肤键从原图标导出位置
static int m_BItExitFlg; //Exit按键图标从原图标导出位置
static int sinkflag; //只做初始化显示的图片的变量
//hwp end
bool m_flagSkin; //皮肤的状态
bool m_flag; //播放的状态
CRect m_rectPlay; //Play按键矩形区域
CRect m_rectStop; //stop按键矩形区域
CRect m_rectNext; //Next按键矩形区域
CRect m_rectOnUp; //Prev按键矩形区域
CRect m_rectChgSkin; //换肤矩形区域
CRect m_rectExit; //Exit按键矩形区域
5、为主对话框类添加一个成员函数Draw(CDC *pDC),用VC画图的方式,初始化播放器的按钮。代码如下:
//绘制对话框及图片按钮
void CMP3PlayerDemoDlg::Draw(CDC *pDC)
{
CDC pDisplayMemDC, tempDC;
CBitmap bitmap0;
bitmap0.CreateCompatibleBitmap(pDC, 301, 347); //内存图片,该函数创建与指定的设备环境相关的设备兼容的位图。
pDisplayMemDC.CreateCompatibleDC(pDC); //内存DC
CBitmap* pOldBufBitmap = pDisplayMemDC.SelectObject(bitmap0);
tempDC.CreateCompatibleDC(pDC); //内存DC
if(!sinkflag)//用画图的方式,初始化所有按钮
{
//play 按钮
iniRect(135, 96, 36, 33, m_rectPlay);
//stop
iniRect(221, 105, 20, 20, m_rectStop);
//next
iniRect(174, 96, 33, 33, m_rectNext);
//prev
iniRect(9
您可能关注的文档
最近下载
- 锅炉安装改造维修质量保证手册-符合TSG 07-2019特种设备质量保证管理体系.pdf VIP
- 医疗服务行业中市场失灵与政府失灵及其矫正.doc VIP
- GB51202-2016 冰雪景观建筑技术标准.docx VIP
- (最新!)起重机安装(含修理)与检验验收作业指导书附自检记录表2025版.docx VIP
- 室内冰雪景观建筑技术标准.pdf VIP
- 2026年湖南电气职业技术学院单招综合素质考试题库新版.docx VIP
- (最新!)起重机械安装(含修理)程序文件2025版.pdf VIP
- GB51202-2016 冰雪景观建筑技术标准.docx VIP
- 《冰雪景观建筑技术标准 GB+51202-2016》详细解读.pptx VIP
- 2026校招:长安汇通公司面试题及答案.doc VIP
原创力文档

文档评论(0)