DEV控件使用 资源共享 大家把使用过程中的问题和心得共享一下(200分)

  • 主题发起人 主题发起人 ZBJ2001_KF
  • 开始时间 开始时间
Z

ZBJ2001_KF

Unregistered / Unconfirmed
GUEST, unregistred user!
一套完整的Developer Express Inc 系列控件组 for Delphi7 的安装过程

Developer Express控件简介

Express Scheduler Suite
可以建立类似于Outlook中日历那样的空间,计划任务

ExpressQuantumGrid Suite
一个超级牛的Grid控件,不要告诉我不知道什么是Grid,其中Filter功能也是非常厉害的

ExpressBars Suite
非常厉害非常厉害的工具条菜单控件

ExpressPrinting System
打印控件,可以和ExpressQuantumGrid 完美连接,还没发现有没有报表功能,要不就是没有报表功能,完美的ExpressQuantumGrid控件就可以代替了

ExpressQuantumTreeList Suite
非常牛的树状控件,跟ExpressQuantumGrid 结合起来很厉害的

ExpressNavBar
是用来做类似于XP下的浏览器左边的导航条的,非常地帅

ExpressLayout Control
好像是界面布局的控件

ExpressDBTree Suite
非常好用的数据库树形列表控件

ExpressMasterView
专门用作总单细单甚至多层的关系的GRID显示,它的效率比ExpressQuantumGrid Suite
还要高。不过功能不是很强。

ExpressDBTree Suite
结合数据库表进行像WINDOWS中浏览器中树结构显示的控件

ExpressOrgChart
结合数据库表进行组织结构显示的控件。

ExpressVerticalGrid Suite
表结构以垂直方式(卡片样式)的GRID显示,一般来说,GRID适合用来显示,而VerticalGrid适合用来编辑数据。
 
使用cxGrid有一些时间了,在这里总结一下使用cxGrid的一些方法,希望给刚开始接触cxGrid的人一些帮助。
1.简单介绍:cxGrid右下方的cxGrid1Level1是表示Grid表的层,cxGrid可以有多层,这相当于集合了PageControl的
功能,而cxGrid1Level1右边的cxGrid1DBTableView1相当于DBGrid一样。右击cxGrid1可以添加cxGrid1Level2,右击
cxGrid1Level2,可以选择Create View , Add level 或者Delete Level。Add level可以增加子Level,Create View
里面可以选择很多不同总类的View。其中
1)DB Table可以和数据库连接的View,更一般的DBGrid类似,它比DBGrid多了比如鼠标中键可以用,可以统计,
查询,等等功能;
2)DB Banded Table 则可以实现比如:
---------------------------------
| 说明1 | 说明2 |
---------------------------------
| 字段1 | 字段2 | 字段3 | 字段4 |
等类似的功能;
3)DB Card View 则提供了卡片方式的显示数据的功能,这个用在比如人事档案管理比较不错;
4)其它不一一赘述。

2.一些使用方法:
1)有图片和MEMO的例子:
拖入一个cxGrid1,Table1,DataSource1。 Table1的DatabaseName设为DBDEMOS,TableName设为biolife.db,
Active设为True;DataSource1的DataSet设为Table1;cxGrid1DBTableView1的DataController中的DataSource
设为DataSource1;右击cxGrid1DBTableView1选择Create All Columns;双击cxGrid1,在弹出的窗口中找到
cxGrid1DBTableView1Notes和cxGrid1DBTableView1Graphic,将它们的Properties属性设为BlobEdit;运行看看
结果。再将cxGrid1DBTableView1Graphic的Properties属性设为Image,再将Properties下的Stretch设为True,
将cxGrid1DBTableView1->optionsview->CellAutoHeight 设为True,看看结果。

2)如何让"Drag a column here to group by that column"不显示
解决:点击cxGrid1上的cxGrid1DBTableView1
在cxGrid1DBTableView1->optionsview->groupbybox:=false即可
注:OptionsView里面有很多属性可能经常要用,比如:ColumnAutoWith,Navigator等等,慢慢琢磨吧:)

3)GroupPanel上面的英文[Drag a column header to group by that column]怎么可以改成中文?
解决:最简单的方法是 TcxGridTableView.OnCustomDrawPartBackground ,也可用 OnCustomDrawGroupCell:
procedure TForm1.cxGrid1DBTableView1CustomDrawPartBackground(
Sender: TcxGridTableView;
ACanvas: TcxCanvas;
AViewInfo: TcxCustomGridCellViewInfo;
var ADone: Boolean);
begin
AViewInfo.Text:='动态设置 GroupBox 的显示内容';
ACanvas.FillRect(AViewInfo.Bounds);
end;

4)如何实现如下功能:
+财务部
+原材料仓库
+成品库
+冲压车间
+软件开发部
这个是部门的名称,点击加号就可以将本部门的人员情况显示出来。
解决:其实这是一个主从表关系,1:填好主表的keyfieldnames
2:填好从表的keyfieldnames
3:填好从表的 detaikeyfieldNames与masterkeyfieldnames
4: 从表的数据源一定要按与主表关联的字段排序
注:其它地方设置了主从表结构那样就显示不出来,比如设置了从表的Table或者Query的mastersource和
asterfield就会不能显示数据!如果是两个cxGrid的主从关系,这样设置就很OK了。

5)统计功能
解决:cxGrid1DBTableView1->optionsview->Footer 设为True
cxGrid1DBTableView1->DataController->Summary设置FooterSummaryItems即可
6)类似PageControl显示
解决:增加一个Level,将cxGrid1->RootLevelOptions->DetailTabsPosition设为dtpTop,然后相应的设置cxGrid1Level1,和cxGrid1Level2的Caption值。
 
我现在使用其数据感知的控件,如下拉列表,或是日期控件时,发现不能设置成只读的.
搞不明白是什么原因.
 
散分.不问了
 
学习~~
当设为只读~ 控件数据不能写入~ 只能读取~
 
可以新增后,对于日期控件和下拉列表,多点几次,只读就不起作用了.
 
很好,帮顶。
 
什么很好
 
更换皮肤
1、放入SkinControl控件后,选择相应的skinName,相应控件就后发生皮肤改变。
2、pageControl设计时皮肤是改变的。但运行时不改变。要在单元中加入dxSkinscxPCPainter。
资料来源是帮助中How to Apply Skins in the Application
3、docking改变皮肤,在放置dxDockingManager,设置viewStyle :=vsUseLookAndFeel;
以下是帮助中描述的特别控件所需要的单元。
Control Skin Painter Unit
ExpressBars v6 dxSkinsdxBarPainter
ExpressDocking Library dxSkinsdxDockControlPainter
ExpressLayout Control dxSkinsdxLCPainter
ExpressNavBar dxSkinsdxNavBarPainter
ExpressPageControl and ExpressTabControl (shipped with the ExpressQuantumGrid v6 Suite) dxSkinscxPCPainter
ExpressScheduler v2 dxSkinscxSchedulerPainter
Ribbon control (shipped with ExpressBars) dxSkinsdxRibbonPainter
StatusBar (shipped with ExpressBars) dxSkinsdxStatusBarPainter
Other controls dxSkinsDefaultPainters
3、自定义皮肤的使用。系统自带的10来种基本够用。如果想自创,可以使用其自定义皮肤软件定义一下。
1)、使用上是这样的。将生成的RES文件,和PAS文件全都复制到程序目录下。
2)、在程序单元中引用生成的PAS文件。
3)、对SkinControl.skinName = '自定义的皮肤名';这就可以动态的调用自定义的皮肤。
资源来源:How to Apply Custom Skins in the Application
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
712
DelphiTeacher的专栏
D
I
回复
0
查看
696
import
I
后退
顶部