自己动手制作1款简洁实用的图片浏览器.docxVIP

自己动手制作1款简洁实用的图片浏览器.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
自己动手制作1款简洁实用的图片浏览器

自己动手制作一款简洁实用的图片浏览器 软件DIY,说白了就是利用现有的类库、组件,快速构造出自己的程序 出来。就象你找来各种电脑配件,然后把它们装配成整机一样;但也有不 一样的地方,电脑配件即使是旧的二手配件,怎么说也得花一点钱,而软件 的类库、组件,你有时侯可以免费得到。 我想要DIY的,是一款简洁实用的图片浏览器。众所周知,ACDSee是最流行 的图片浏览器,确实很不错。但作为一名程序员,我想,要是我也能制作出 一款简洁实用的图片浏览器,可以在我开发的软件中有图片浏览功能,那该多好。 而我确实DIY出了这么一个图片浏览器,她简洁实用,小巧玲珑,取名为: SimpleBrowse。现将制作过程介绍如下,与大家分享,并期望能起到抛砖引玉的作用。 第一步:定规格 1.样子要象ACDSee一样,左边是目录树,右边是文件列表,显示图片文件的缩图。 2.缩图要好看,浏览速度要快,能浏览的图片格式要多。 3.简洁实用,制作难度不要太大。 4.在Win98,WinNT下都能用。 第二步:选材料 由于界面主要分为两大部分,即左边的目录树和右边的文件列表,故材料也就主 要是这两大件。 1.左边目录树 从/kstowell/上,我们可以得到一个免费的MFC扩 展类库CJ60Lib.dll,这个类库包含有许多用于界面设计的类,其中有一个 CShellTree类,可以显示和Windows Explorer左边目录树一样的效果,正好符 合我想要的,选定了它。 2.右边文件列表 这是关键的部分,它要求能创建、显示、管理图片文件的缩图,要求能浏览多 种格式的图片文件,要求有较精美的缩图显示效果和较快的浏览速度,要求易 于使用难度不大。泰来影像科技有限公司在图像处理应用软件开发方面有较深 的造诣,推出了一个MFC扩展类库thl.dll,其中有一个CThumbListCtrl类,正 是用来创建、显示图片缩图用的,选定了它,从/上获取之。 ---- 第三步:生成程序框架 ---- 象开发其他程序一样,用VC++6.0 AppWizard生成程序框架。 ---- 1.选菜单项File-New,到Projects面板,选取MFC AppWizard(exe), Project name为SimpleBrowse。OK确定后,进入一个向导中,共有6步。 ---- 2.Step 1,选single document,其它不动,用缺省值。 ---- 3.Step 2 of 6,不动,用缺省值。 ---- 4.Step 3 of 6,不动,用缺省值。 ---- 5.Step 4 of 6,选Internet Explorer ReBars,其它不动,用缺省值。 ---- 6.Step 5 of 6,选Windows Explorer,其它不动,用缺省值。 ---- 7.Step 6 of 6,不动,用缺省值。Finish确定后,即生成程序框架。 ---- 第四步:使用类库、组件 ---- 1.左边的目录树对应的类是CLeftView,修改之。 class CLeftView : public CView/*CTreeView*/ { ... // Attributes public: CShellTree m_TreeCtrl;// use shell tree control ... // Generated message map functions protected: //{{AFX_MSG(CLeftView) afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg void OnSize(UINT nType, int cx, int cy); afx_msg void OnItemexpanding(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnSelchanged(NMHDR* pNMHDR, LRESULT* pResult); //}}AFX_MSG DECLARE_MESSAGE_MAP() ... }; ---- (1)将其父类由CTreeView改为CView,原因后述。 ---- (2)加入CShellTree类的成员变量m_TreeCtrl,目录树的具体内容就是由它实现的。 ---- (3)增加消息响应函数OnCreate(),在其中把m_TreeCtrl创建起来。 ---- (4)增加消息响应函数OnSize(),使m_TreeCtrl总是占满CLeftView的区域。 ---- (5)增加消息响应函数OnItemexpanding(),在此响应展开目录的操作。 如果CLeftView的父类是CTreeView

文档评论(0)

ktj823 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档