ForFa Developer Studio使用DevExpress控件库实现客户端界面
DevExpress控件库安装步骤如下:
1)安装顺序
/ExpressCore Library/Packages
dxCore*
dcldxCore*
/ExpressGDI+ Library/Packages
dxGDIPlus*
/XP Theme Manager/Packages
dxTheme*
/ExpressCommon Library/Packages
dxComn*
/ExpressDataController/Packages
cxData*
cxADOAdapters*
cxBDEAdapters* (不用安装)
cxIBXAdapters* (不用安装)
/ExpressLibrary/Packages
cxLibrary*
dclcxLibrary*
/ExpressEditors Library 5/Packages
cxEditors*
cxExtEditors*
dclcxEditors*
dclcxExtEditors*
/ExpressMemData/Packages
dxmds*
dcldxmds*
/ExpressExport Library/Packages
cxExport*
/ExpressPageControl 2/Packages
cxPageControl*
dclcxPageControl*
/ExpressQuantumGrid 6/Packages
cxGrid*
dclcxGrid*
/ExpressDBTree Suite/Packages
dxdbtr*
dxtrmd*
dcldxdbtr*
dcldxtrmd*
/ExpressBars 6/Packages
dxBar*
dxBarDBNav*
dxBarExtDBItems*
dxBarExtItems*
dxRibbon*
cxBarEditItem*
dcldxBar*
dcldxBarDBNav*(编译不过)
dcldxBarExtDBItems*(编译不过)
dcldxBarExtItems*
dcldxRibbon*
dclcxBarEditItem*(编译不过)
/ExpressVerticalGrid/Packages
cxVerticalGrid*
dclcxVerticalGrid*
2)在安装每一个包时,先将Packages目录下对应的BCB6的工程文件拷贝到Source目录下。
以ExpressCore Library为例,先将ExpressCore Library/Packages下的dxCoreC6.*拷贝到ExpressCore Library/Sources下,
然后打开bpk文件,编译即可。
cx开头的组件不需要安装
dcl开头的组件需要安装
3)在安装组件时,若出现link错误,请检查Library Path。
若Library Path为NULL,需要设置为:$(BCB)/Lib/debug;$(SEARCHPATH);$(LIBDIR);$(BCB)/lib/obj;$(BCB)/lib;$(BCB)/projects/lib
若Library Path为不为NULL,需要追加如下目录:
G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressCore Library/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/XP Theme Manager/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressGDI+ Library/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressLibrary/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressDataController/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressEditors Library 5/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressPageControl 2/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressExport Library/Sources;G:\01-开发工具\开发包\DevExpressV46\Developer Express Inc\ExpressCommon Library\Sources
其中G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc是DevExpressV46源码文件路
4)在安装组件时(/ExpressBars 6/Packages),若出现如下link错误
[Linker Fatal Error] Unable to open file 'SQLTIMST.OBJ'
[Linker Fatal Error] Unable to open file 'FMTBCD.OBJ'
[Linker Fatal Error] Unable to open file 'DB.OBJ'
[Linker Fatal Error] Unable to open file 'DBCONSTS.OBJ'
新建任意bcb工程,将C:\Program Files\Borland\CBuilder6\Source\vcl下的db.pas, sqltimst.pas, fmtbcd.pas和dbconsts.pas添加到工程中,然后编译,生成相应的obj文件,将这些obj文件copy到C:\Program Files\Borland\CBuilder6\Lib即可
5)在安装组件时,若出现如下错误:
[Linker Error] Unresolved external '__fastcall Outline::TCustomOutline::~TCustomOutline()' referenced from C:\PROGRAM FILES (X86)\BORLAND\CBUILDER6\LIB\BCBSMP.LIB|.\cdiroutl.cpp
请添加C:\Program Files (x86)\Borland\CBuilder6\Lib\bcbsmp.bpi文件到工程包的requires中
安装完成
新建一个工程,从dev express选项卡中托放cxGrid控件到窗体上,然后编译会出现如下提示:
unable to find header file for component: cxStyle
原因是系统找不到库文件,设置BCB开发环境的库路径,Tools/Environment Options,在Library选项卡中添加如下库路径:
G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressDBTree Suite/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressCommon Library/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressCore Library/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/XP Theme Manager/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressGDI+ Library/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressLibrary/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressDataController/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressEditors Library 5/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressPageControl 2/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressExport Library/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressQuantumGrid 6/Sources;G:\01-开发工具\开发包\DevExpressV46\Developer Express Inc\ExpressBars 6\Sources
其中G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc是DevExpressV46源码文件路径;
设置工程的包含路径为:
G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressDBTree Suite/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressCommon Library/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressCore Library/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/XP Theme Manager/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressGDI+ Library/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressLibrary/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressDataController/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressEditors Library 5/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressPageControl 2/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressExport Library/Sources;G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressQuantumGrid 6/Sources;G:\01-开发工具\开发包\DevExpressV46\Developer Express Inc\ExpressBars 6\Sources
[Linker Error] Unresolved external 'Sysinit::HInstance' referenced from C:/PROGRAM FILES/BORLAND/CBUILDER6/PROJECTS/LIB/CXDATAC6.LIB|G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressDataController/Sources/cxDataConsts.pas
[Linker Error] Unresolved external 'Sysinit::ModuleIsLib' referenced from C:/PROGRAM FILES/BORLAND/CBUILDER6/PROJECTS/LIB/DXGDIPLUSC6.LIB|G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressGDI+ Library/Sources/dxGDIPlusAPI.pas
[Linker Error] Unresolved external 'Sysinit::ModuleIsPackage' referenced from C:/PROGRAM FILES/BORLAND/CBUILDER6/PROJECTS/LIB/DXGDIPLUSC6.LIB|G:/01-开发工具/开发包/DevExpressV46/Developer Express Inc/ExpressGDI+ Library/Sources/dxGDIPlusAPI.pas
至此,程序能正常使用DevExpress组件了