《嵌入式系统及其应课件》第七章嵌入式系统开发应用基础.ppt

《嵌入式系统及其应课件》第七章嵌入式系统开发应用基础.ppt

《嵌入式系统及其应课件》第七章嵌入式系统开发应用基础

嵌入式系统开发应用基础 李 登 峰 (1)定义变量。在CEphotoDlg构造函数上面定义如下变量。 HWND hwndCB; #define IDC_CMBBAR 0x100 (2)显示菜单栏。在CEphotoDlg::OnInitDialog函数中添加如下代码: hwndCB = CommandBar_Create(AfxGetInstanceHandle(), GetSafeHwnd(), IDC_CMBBAR); CommandBar_InsertMenubar(hwndCB,AfxGetInstanceHandle(), IDR_MENU1, IDC_CMBBAR); //插入菜单栏 CommandBar_Show(hwndCB, TRUE); //显示 void CEphotoDlg::OnElectpath() { CFileDialog dlg(TRUE,NULL,NULL, OFN_HIDEREADONLY|OFN_EXPLORER|OFN_ENABLEHOOK| OFN_OVERWRITEPROMPT|OFN_ALLOWMULTISELECT, _T(JPG文件(*.jpg)|*.jpg|ALL Files(*.*)|*.*||),NULL);//创建打开文件窗口 if(dlg.DoModal()==IDOK) { fname[i]=dlg.GetNextPathName(pos); //把打开的多个文件名赋值给fname数组 i++; } Invalidate(FALSE); } (3)图片显示,在OnPaint函数里面实现图片的显示。 CVOImage image; image.Load(dc.m_hDC ,fname[0]); //下载图片 image.Draw(dc.m_hDC,RectFrame.left,RectFrame.top,135,140); //显示图片 for (j=0;j=3;j++)//将选择的图片显示在所有图片显示区 { image.Load(dc.m_hDC ,fname[j]); image.Draw(dc.m_hDC,rectmap[j].left,rectmap[j].top,50,45); UpdataPhotoPage(1,3); } else { image.Load((HDC)pDC-m_hDC,fname[m_curpage]); image.Draw((HDC)pDCm_hDC,RectFrame.left,RectFrame.top,135,140); } } 其他按钮的单击事件方法和查看下一张图片的方法相同, 按照这个方法依次添加程序即可。 void CEphotoDlg::OnPlay() { flagplay=!flagplay; if(flagplay) { SetTimer(1,1000,NULL); //当点击播放按钮时,打开定时器 } else { KillTimer(1); //再次点击播放按钮时,关闭定时器 } } 接下来在void CEphotoDlg::OnTimer(UINT nIDEvent)函数中添加代码就可以实现图片的自动播放了。 void CEphotoDlg::OnPlay() { flagplay=!flagplay; if(flagplay) { SetTimer(1,1000,NULL); //当点击播放按钮时,打开定时器 PlaySound(MAKEINTRESOURCE(IDR_WAVE1),AfxGetInstanceHandle(), SND_RESOURCE|SND_ASYNC);//播放音乐 } else { KillTimer(1); //再次点击播放按钮时,关闭定时器 PlaySound(NULL,NULL,SND_FILENAME); //停止音乐 } } 11. 将EPhoto下载到开发平台并运行。 (1)把刚刚生成的EPhoto的可执行文件复制到开发平台的某个目录里面,同时也把IMGDECMP.DLL复制到该目录。 (2)运行可执行文件。 至此,一个简单的电子相册就制作完成了,运行效果如图所示。 温度控制系统软件界面 这里假定读者的开发板中烧写的镜像中包含了GPIO的驱动GPF.dll和温度计的驱动TEM.dll,关于驱动的问题,参见第七章的内容。 其中单线数字温度计DS18B20在第七

文档评论(0)

1亿VIP精品文档

相关文档