设为首页 加入收藏

TOP

17.9.1 相册管理模块的设计与实现(1)
2013-10-07 14:40:55 来源: 作者: 【 】 浏览:62
Tags:17.9.1 相册 管理 模块 设计 实现

17.9  电子相册的模块分析

在简介中已经对电子相册的管理模块、添加模块和浏览模块介绍过,3个模块的关系如图17.28所示。

本节主要根据前几节介绍的关键技术实现这3个模块的方法。

17.9.1  相册管理模块的设计与实现(1)

相册管理模块主要实现相册的集中管理,相册的预览及功能导航的作用。其功能简单但作用重要。本节将详细介绍实现相册管理模块的主要过程。

(1)为对话框添加3个按钮、1个组合框及2个Group Box控件,布局如图17.29所示。

 
图17.28  相册模块示意图
 
图17.29  相册管理模块的界面布局
(2)定义一个相册结构体:
  1. typedef struct ALBUM  
  2. {  
  3.     CString name;                   //相册名称  
  4.     CString str_photo[100];         //相片数组  
  5.     CString str_music;              //背景音乐  
  6.     int     num_photo;              //相片数量  
  7. }*PALBUM;  

相册结构体有4个成员变量,说明如下。

name:相册的名称。

str_photo:保存相册照片路径的字符串数组。

str_music:保存相册背景音乐路径的字符串变量。

num_photo:保存相册中照片的数量。

(3)定义一个相册结构体型的数组变量,用于保存系统中所有的相册。再定义其他几个变量用于相册的管理:

  1. ALBUM m_album[100];     //相册结构体数组变量  
  2. int m_curAlbum;         //系统当前活动相册的序号  
  3. int m_numAlbum;         //系统中相册的数量  

创建一个相册,在相册管理模块为空时,这个相册为默认的当前相册。在对话框的构造函数中初始化这个相册及其他相应的变量。
  1. 01  CMyAlbumDlg::CMyAlbumDlg(CWnd* pParent /*=NULL*/)  
  2. 02      : CDialog(CMyAlbumDlg::IDD, pParent)  
  3. 03  {   //构建一个默认的相册  
  4. 04      m_numAlbum = 1;                 //相册数位1  
  5. 05      m_curAlbum = 0;                 //当前索引为0  
  6. 06      m_album[0].name = "主人相册";   //设置相册名称  
  7. 07      m_album[0].str_music = "音乐\\bk001.wav";  
  8. 08      m_album[0].num_photo = 16;      //相片数量  
  9. 09      for(int i = 0; i < m_album[0].num_photo; i++)  
  10. 10      {   //载入相片  
  11. 11          m_album[0].str_photo[i].Format("photo\\%c.jpg", 'a' + i);  
  12. 12      }  
  13. 13  }  


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇17.9.1 相册管理模块的设计与实现.. 下一篇多态在 Java 和 C++ 编程语言中的..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: