17.9.3 电子相册浏览模块的设计与实现(2)
(2)定义一个枚举类型,以标识当前相册正在进行的操作。
- enum TURNTYPE{
- type_head = 0, //相册封面
- type_left = 1, //左侧翻页
- type_right = 2, //右侧翻页
- type_end = 3, //相册封面
- type_rightToend = 4, //下一页为封底
- type_leftTohead = 5, //下一页为封面
- type_endToleft = 6, //相册封底到左侧翻页
- type_headToright = 7, //相册封面到右侧翻页
- type_leftToright = 8, //左侧翻页到右侧翻页
- type_rightToleft = 9 //右侧翻页到左侧翻页
- };
在对话框类中定义这个枚举类型的一个变量:- TURNTYPE m_turnType;
另外还需定义一些其他变量:- bool m_bLtnDown; //标识鼠标左键是否按下
- int m_photoFrameLeft; //相框距对话框左侧的距离
- int m_photoFrameTop; //相框距对话框上侧的距离
- int m_photoNum; //相册中相片的数量
- bool m_bTOnce; //是否在进行单次翻页
- bool m_bAuto; //是否在进行自动翻页
- CString m_strMusic; //背景音乐路径
- int m_curNum; //当前相片的序号
- CRect m_rectPL; //页面1相片所在区域
- CRect m_rectPR; //页面2相片所在区域
- CRect m_rectTL; //页面3相片所在区域
- CRect m_rectTR; //页面4相片所在区域
- CBitmap m_bmBack; //背景图像
- CBrush m_brBack; //背景画刷
- Bitmap *m_pPage[6]; //4个翻动页面及封面封底
- Graphics *m_pGPage[4]; //4个翻动页面的Graphics
- Image *m_pImage[4]; //4张正在翻动的相片
- CString m_strPage[6]; //4个翻动页面及封面封底的路径
- CString m_strImage[150]; //保存所有相片的路径
- CDC dcMemory; //内存设备环境
- CRect m_bkRect; //保存客户区大小
- float m_x; //转动轴点距边的距离
相关变量在绘图时的含义如图17.38所示。
|
| (点击查看大图)图17.38 变量含义 |