CJLibrary--VC下高级界面设计的利器

visual c++ 专栏收录该内容
54 篇文章 0 订阅
CJLibrary在   http://www.codejock.com/download.htm   最新的是6.09
BCGControl在http://www.codeproject.com/docking/BCGControlBar.asp最新的是4.7
对于初学者来说,VB,Delphi里对每个控件千变万化的属性设置确实很迷人,众多  
  的控件更为你程序增色不少。VC相对而言,差了很多,就那么几个干巴巴的Common    
  Control,连字体、颜色都不能设。  
   
  VC真的不能吗?当然不是。VC的精髓是藏于内,而不是曝于外的。您先别误会,我  
  写这篇文章的目的,并不是要给大家讲VC的精髓,真正VC的精髓我也没有领会到。我的  
  目的是推荐给大家一个类库--CJLibrary,利用这个库,你可以做出像Outlook,    
  DevStudio那样美观、方便的程序界面。(为了这个目的,我连光光版主都被撤了,:-<   )  
   
  此文目标,是让对VC仅有一般了解的人就能轻松使用CJ,所以,不会涉及到有关  
  CJ实现原理的细节内容,如果可能,将来我会再写一些文章,聊一聊我在VC界面开发方面  
  的心得。  
   
  安装过程很简单,所有组件都选上,占用4.3M的空间。为表达方便,以下提到文件  
  路径时都指的是CJ的安装目录下的子目录、文件。  
   
  CJLibrary\*.*   是CJ的源代码,不含.h文件。  
  Include\*.*   是CJ的头文件,你自己编的程序所需要包含的头文件都在这里。  
  Example\*.*   是CJ的示例文件,能读懂这些代码,你也就知道CJLibrary应该怎么  
  用了。  
   
                          如果你比较勤快的话,那么就别再听我絮叨了,现在就去读吧!  
  Wizards\*.*   是一些向导程序,编译这些程序之后,你的DevStudio的AppWizard里  
                          便自动有了支持CJ的几个Wizard。这是使用CJLibrary最简单的方法,我  
                          们从这里谈起……  
   
  (注意,有些知识、步骤第一次涉及到时都会详细讲述,而后面再遇到就不  
  赘述了,请初学者留心。)  
   
  在开始使用CJ之前,要作些准备工作,那就是编译生成CJ应用需要的.lib和  
  .dll文件。  
   
  打开CJLibrary\CJLibrary.dsw,如果用的是VC6,会出现一个提示框,问你是  
  否把VC5的工程转为VC6的工程。回答是就Ok了,没问题的。如果用的是VC5,  
  就没有这个提示了。CJ就是在VC5下编的。  
   
  首先切换Active   Project   Configuration。选Build菜单里的Set   Active  
  Configuration...设置激活配置为CJLibrary-Win32   Release,然后按F7编  
  译。再切换激活配置为CJLibrary-Win32   Debug,编译。VC中一个程序可以  
  有多种配置,缺省配置就是Debug和Release两种,分别用来调试和最终发行  
  执行文件。现在所作的事情就是为两种不同的配置分别生成必须的库文件。  
  这个工程中还有两个Unicode配置,是为支持Unicode的NT程序准备的,如果  
  你不需要Unicode支持,可以置之不理。  
   
  此时CJ的安装目录下会出现一个Lib目录,里面就是生成的库文件。CJ608Lib.*  
  对应Release配置,CJ608Libd.*对应Debug配置。*.lib是源程序链接时使用的  
  库文件,*.dll是在执行程序运行时调用的动态链接库文件。  
   
  CJLibrary\CJLibrary.dsw生成的库文件都是用于动态链接的,也就是说,  
  最后的执行程序必须有.dll文件的支持才能运行。能否让程序脱离.dll而独  
  立运行呢?当然可以了。  
   
  CJLibrary\CJLibraryStatic.dsw就是用于生成静态链接库文件的。打开,编  
  译各种配置,Lib目录下将增加CJ608LibStatic.lib和CJ608LibStaticd.lib两  
  个库文件。这两个文件体积明显大了很多。  
   
  至于怎么让你的应用可以静态活动态链接,我们后面再讲。  
   
  Wizards\下有六个Wizard源代码,每编译一个都会向DevStudio里添加一  
  个Wizard,这里仅以Outlook为例。  
   
  打开Outlook\Outlook.dsw,  
   
  首先切换激活配置为Outlook-Win32   Release,然后编译。此时,这个  
  Outlook   Wizard就已经被加到DevStudio的集成环境中了,接下来就可以  
  用它建立你的Outlook了。  
   
  建立过程是这样的:File->New->Projects->CJ   Outlook   AppWizard,  
  在Project   name里添上你想要的工程名(比如我用OutlookDemo),Location  
  里指明你要保存工程的目录,  
   
  然后Ok!不用理会接下来的对话框,再次Ok!一个属于你的CJ工程就建好  
  了。  
   
  编译一下看看,提示出错:  
  Cannot   open   include   file:   'CJLibrary.h':   No   such   file   or   directory  
  这是因为你没有把'CJLibrary.h'加到Include   Directory里。怎么加呢?  
   
  Project->Settings;对话框里改变Settings   For为All   Configurations;  
  单击C/C++,变Category为Preprocessor;把CJ的Include目录的绝对路径  
  添到Additional   includedirectories里;最后OK!  
   
  再编译,还有错,提示:  
  LINK   :   fatal   error   LNK1104:   cannot   open   file   "CJ608Libd.lib"  
  hehe...别着急,这是因为你的Library   directory里还差CJ的路径。  
   
  Project->Settings->All   Configurations->Link;变Category为Input;  
  把CJ的Lib目录的绝对路径添到Additional   library   path里;最后OK!  
   
  这回编译没问题了,但是按ctrl+F5运行程序又有了问题。haha.....拷贝  
  Lib\*.dll到你的工程目录下,对我来说是OutlookDemo\。  
   
  现在,郑重地按下ctrl+F5庆祝你的第一个CJ应用的首次运行……是不是眼  
  前一亮呀?  
   
  目前是动态链接,所以需要.dll的支持。下面将其改为静态链接。  
   
  Project->Settings->All   Configurations->General;改Microsoft    
  Foundation   Classes为Use   MFC   in   a   Static   DLL。然后,Bulid->Rebuild    
  All。这时生成的执行文件就不需要CJ的.dll的支持了。  
   
  上面介绍的加Include和Library目录的方法只对单个工程有效,如果你想  
  一劳永逸,使以后所有的工程都能自动找到CJ的库和头文件,那么Tools->  
  Options->Directories,在Include   files和Library   file里都加上相应的路径。  
   
   
  其实最常用的两个Wizard是Wizards\Mdi和Wizard\Sdi,我选Outlook仅仅因为  
  他pp而已。    
  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 技术黑板 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值