CXGRID控件使用说明
更新时间:2024-02-02 10:16:01 阅读量: 教育文库 文档下载
- cxgrid控件包推荐度:
- 相关推荐
TCXGRID控件:
属性:
ActiveLevel: 当前层 BorderStyle: 窗口风格 Color: 颜色
FocusedView: 当前View; Font: 字体
LevelTabs: 类似PageControls头设置 CaptionAlgnment:标题对齐方式 Images:图标 Style:风格 Levels:
RootLevelOptions:层选项
DetailTabsPosition: 类似PageControls头显示位置; TabsForEmptyDetails: 如果数据为空是否显示Tabs
TcxGridLevel组件:
属性:
Active: 读写激活该层;
Controls: 读写指向TCXGrid;
CanBeVisible: 读取是否能设置可见;
Count: 读取子层个数;
Displaycaption: 读取层标题;
IsMaster: 读取是否cxgrid的最上层;
Items: 读取层组,例: Items[0]访问第一个层; Level: 读取层级数;
VisibleCount: 读取可见层个数 VisibleIndex: 读取可见索引个数
VisibleItems: 读取可见层组,例:VisibleItems[0]访问第一个可见层 Caption: 读写层标题;
GridView: 指定或读取该层的Grid显示; ImageIndex: 读写图标索引
Options: TcxGridLevelOptions选项
DetailFrameColor: 读或写明细表格颜色 DetailFramWidth: 读或写明细表格
DetailTabsPosition: 读或写Tab位置,类似PageControlsTabs Styles: 样式
Tab: 读或设置tab样式
tabsBackground: 读或设置tab背景样式
Visible: 读或设置是否可见
方法:
Add: 增加一个Level;
Levels[i].Add:增加一个子Level;
TcxGridDBBandedTableView组件:
属性:
BackGroundBitmaps:背景图片选项 Background:背景图
Bandbackground:带背景图 Bankheader:带头背景 Content:细节区背景 filterBox:过滤区背景 footer:注脚背景 group: 组背景 header:列头背景 preview:预览区背景 Bands:带列表
DataController: 数据控制 DataSource:数据源
DetailKeyFieldNames:主从表时设置细表键字段名 KeyFieldNames: 主从表时设置关键字段名
MasterKeyFieldNames:主从表时设置主表键字段名 Summary:合计组
FooterSummaryItems:注脚定义 FooterSummaryItems:组脚定义 FilterBox:过滤框
CustomizeDialog:是否自定义过滤条件 Position:过滤框显示位置 Visible:显示过滤框
NavigatorButtons:导航条设置 Append:增加按钮设置
Enabled:是否禁用该按钮 Visible:是否显示该按钮 ImageIndex:图标ID
Cancel:取消按钮设置,具体设置同Append; ConfirmDelete:删除时是否确认提示 Delete: 具体设置同Append; Edit: 具体设置同Append; First: 具体设置同Append; Insert: 具体设置同Append; Last: 具体设置同Append;
Next: 具体设置同Append; Filter: 具体设置同Append;
GotoBookmark: 具体设置同Append; NextPage: 具体设置同Append; Post: 具体设置同Append; Prior: 具体设置同Append; PriorPage: 具体设置同Append; Refresh: 具体设置同Append;
SaveBookmark: 具体设置同Append; OptionsBehavior:行为选项
AlwaysShowEditor:是否总是显示编辑条 BandHeaderHints:带头是否显示提示 CellHints:单元格是否显示提示
ColumnHeaderHints:列头是否显示提示
CopyCaptionsToClipboard:是否允许复制标题到剪贴板 CopyPreviewToClipboard:是否允许复制预览内容到剪贴板 ExpandMasterRowOnDblClik:是否允许双击行显示明细
FocusFirstCellOnNewRecord:新增记录时是否焦点指向第一列单元格 GoToNextCellOnEnter:按回车是否自动跳到下一单元格 NavigatorHints:是否显示导航条提示 OptionsCustomize:自定义选项 BandHiding:是否显示带
BandMoving:是否允许拖动带 ColumnFiltering:是否允许列过滤 ColumnGrouping:是否允许列分组 ColumnHiding:列头是否隐藏
ColumnHorzSizing:是否允许调整列宽度 ColumnMoving:是否允许列拖动 ColumnSorting:是否允许列排序
ColumnVertSizing:是否允许调整列高度 DataRowSizing:是否允许调整数据行高度 GroupBySorting:是否允许组排序
GroupRowSizing:是否允许调整组行高度
OptionData: 允许数据操作
Appending: 是否允许增加
CancelOnExit: 退出时是否自动取消修改 Deleting: 是否允许删除
DeletingConfirmation: 删除是否提示 Editing :是否允许编辑 Inserting: 是否允许插入 OptionsSelection: 单元格操作
CellMultiSelect:是否允许选择多单元格 CellSelect: 进入单元格是否选择 InvertSelect: 是否允许转换选择
MultiSelect: 是否允许多行选择
HideFocusRectOnExit: 移开是否隐藏焦点
UnselectFocusedRecordOnExit:移开是否允许取消焦点 OptionsView:表格选项
BandCaptionsInColumnAlternateCaption:是否允许在列里修改带标题 BandHeaderHeight: 带头高度
BandHeaderLineCount: 带头显示行数 BandHeaders: 是否显示带头
CellAutoHeight:单元格是否自动高度
CellTextMaxLineCount: 单元格文本最大行数 ColumnAutoWidth: 列是否自动宽度 DataRowHeight: 数据行高度 Footer:是否允许显示注脚
FooterAutoHeight: 注脚是否自动适应高度 FooterMultiSummaries:是否允许多注脚 GridLineColor:表格行线颜色 GridLines:显示表格行线类型
GroupByBox:是否允许拖动列到分组区进行分组 GroupFooters:显示组脚类型 Header:是否显示列头
HeaderAutoHeight:列头是否自动适应高度 HeaderHeight: 列头高度
IndicatorWidth:是否显示左边指示条 IndicatorWidth: 指示条宽度 Navigator: 是否显示导航条
NavigatorOffSet: 导航条偏移位置
ShowColumnFilterButtons: 是否显示列过滤按钮 ShowEditButtons: 是否显示编辑按钮 Preview:预览选项
AutoHeight:是否自动适应高度 Column:要预览的列,只能选一列 LeftIndent: 左缩进点数
MaxLineCount:最大显示行数 RightIndent:右缩进点数 Visible: 预览是否可见 PopupMenu:弹出菜单 Styles:样式或风格组 BackGround:背景风格 Content:明细风格 Footer:注脚风格 Group:组风格
GroupSummary:组合计区风格 Header:头风格
Indicator:指示区风格
Preview:预览区风格 Selection:选择区风格
StyleSheet:风格组,选中后自动设置各区风格
方法或函数:
CreateColumn:
参数:无;
功能:新建一列;
返回:返回列类型结果;
GetColumnByFieldName:
参数:字段名串; 功能:取得指定字段列; 返回:返回列类型结果;
例:MyTV.GetColumnByFieldName('First').Visible := False;
CleaarItems:
参数:无;
功能:清除全部显示列; 返回:无 CreateItem:
参数:无;
功能:建一显示列; 返回:列类型值
StoreToIniFile:导出布局到Ini文件 StoreToRegistry:导出布局到注册表 StoreToStream:导出布局到流体
RestoreFromIniFile: 从Ini文件恢复布局 RestoreFromRegistry:从注册表恢复布局 RestoreFromStream:从流体恢复布局 FindItemByID:根据ID号查找列 FindItemByName:根据列名查找列 FindItemByTag:根据Tag查找列 IndexofItem:返回列的序号 CreateViewInfo:建表格
TCXGRID用法指南
假设已设定以下变量 MycxGrid: TcxGrid;
MycxGridLevel: TcxGridLevel; MyTV: TcxGridDBTableView; MyDataSource: TDataSource;
方法:
一、 建层和层视图
MycxGrid := TcxGrid.Create(self);
MycxGridLevel := MycxGrid.Levels.Add; //建层
MyTV:= TcxGridDBTableView(MycxGrid.createview(TcxGridDBTableView));//建视图 MycxGridLevel.Control := MycxGrid;//指定关系 MycxGridLevel.GridView := MyTV;//指定视图
TcxGridDataController(GetDetailDataController(FocusedRecordIndex, 0)).GridView;//得到下层视图
二、设定表格位置和大小
MycxGrid.ParentWindow := self.Handle; MycxGrid.Top := 0;
MycxGrid.Height := 200; MycxGrid.Width := 400;
MyTV.Preview.visible := true;
三、 设定数据源及分配全部字段
MyTV.DataController.DataSource := MyDataSource; MyTV.DataController.DeleteAllItems; //清除全部字段 MyTV.DataController.CreateAllItems; //建全部显示字段
四、 动态增加显示列及列访问
var
iIndex: integer;
vCol: TcxGridDBColumn;
vImgCom: TcxImageComboBoxItem; i,j: integer;
for i:= 0 to Mydatasource.dataset.FieldCount -1 do begin
vCol := MyTV.CreateColumn;
vCol.DataBinding.FieldName:=Mydatasource.dataset.Fields[i].FieldName;
if (i = 1) then begin
vCol.PropertiesClassName := 'TcxImageComboBoxProperties'; ////分区分大小写 vCol.DataBinding.ValueType := 'String'; for j := 0 to 5 do begin
vImgCom:=TcxImageComboBoxProperties(vCol.Properties).Items.Add;
vImgCom.Description := IntToStr(j); vImgCom.Value := IntToStr(j); end;
end; end;
showmessage(MyTV.Columns[0].Caption);//列标题访问
showmessage(MyTV.Columns[0].DataBinding.FieldName);//列字段名访问 MyTV.Columns[0].SortIndex := 0;
MyTV.Columns[0].SortOrder := soAscending; //列升序排序 MyTV.Columns[0].SortIndex := -1;
MyTV.Columns[0].SortOrder := soNone; //取消列排序
MyTV.DataController.Search.Locate(MyTV.GetColumnByFieldName(FieldName).Index, 查找值);// 列值搜索
MyTV.DataController.FocusedRowIndex := MyTV.DataController.FocusedRowIndex - 1;//记录回翻,即Prior;
DBView.DataController.FocusedRowIndex := DBView.DataController.FocusedRowIndex + 1; //记录后翻,即Next;
Aa:=MyTV.datacontroller.values[1,1] ;// 访问第二行第二列的值
MyTV.Columns[0].DataBinding.ValueTypeClass := TcxStringValueType;//设置列字段类型, 其他如整型[TcxIntegerValueType],浮点型[TcxFloatValueType];
//设置列风格:
MyFirstColumnStyle := TcxStyle.Create(Self); MyFirstColumnStyle.Color := clAqua; MyFirstColumnStyle.TextColor := clBlue;
MyTV.Columns[1].Styles.Content := MyFirstColumnStyle;
//设置列下拉框选择列表及类型 var
A:TDataSource:
B:TcxlookupcomboboxProperties; begin
A:=TDataSource.create(self);
B:=tcxlookupcomboboxproperties.create(self); A.Dataset:=Dic_ry_xb;//此处指定数据源。
B.listdource:=A;//此处指明字段的listsource属性。 B.keyfieldnames:='a'; //此处指明字段的关键字段 B.listfieldnames:='b'; //此处指明字段的返回值。
B.listcolumns.items[0].caption:='x’; //此处默认是会建立一个字段,但是显示的表头是name,所以此处让它显示为自己想要的中午显示。
MYTVc1_sex_code.Properties:=B; //此处指明是那个字段。 end;
五、 设置列外观
MyTV.OptionsView.ColumnAutoWidth := true //列自动宽度 MyTV.OptionsView.CellAutoHeight := true //单元自动高度
MyTV.OptionsView.Footer := true //表格合计行显示 MyTV.OptionsView.Header := true // 表格头显示 MyTV.OptionsView.Indicator := true //显示指示条 MyTV.OptionsView.GroupByBox:=true //显示分组框 MyTV.Preview := True //显示预览区
六、 设置表格样式
var MyStyleSheet:TcxGridTableViewStyleSheet;
MyStyle :TcxStyle; begin
MyStyleSheet := TcxGridTableViewStyleSheet.Create(); MyStyle := TcxStyle.Create(self); MyStyle.Color := clBlack; MyStyle.TextColor := clWrite;
MyTV.Styles.Background := MyStyle; //设置背景样式 MyStyleSheet.AddStyles(MyStyle);//分配样式
cxStyleRepository.CreateStyleSheet(MyStyleSheet);
MyTV.Styles.StyleSheet := cxStyleRepository; //分配样式 End;
七、 设置Preview列
前提条件是设置footer=true;
MyTV.Preview.column := MyTVField1;//设置预览列
MyTV.Preview.MaxLineCount := 4;//设置预览列最大显示行数 MyTV.Preview.LeftIndent :=150; //显示左缩进 MyTV.Preview.RightIndent :=150;//显示右缩进
八、 Footer设置
Var ASummary: TcxDataSummary;
MyFooterItems :TcxDataFooterSummaryItems; Acolumn :TcxGridDBColumn;
ASummary := MyTV.DataController.Summary; //提取Footer;
MyFooterItems := ASummary.FooterSummaryItems; //提取FooterItems; //增加FooterItems
With TcxGridDBTaleSummaryItem(MyFooterItems.add) do Begin try Try
Beginupdate;
Column := TcxGridDBColumn(MyTV.VisibleColumns[0]; //Footer显示列位置 AColumn := TcxGridDBColumn(MyTV.VisibleColumns[0]; If assigned(AColumn) then
FieldName := AColumn.dataBinding.FieldName; //Footer计算字段
Kind := TcxSummaryKind(skSum);
//skNone=无.skSum=合计;skMax=取最大值, //skCount=//记录数,skAverage=平均数 Finally
Endupdate; End; Except
Showmessage(‘error’);
MyFooterItems.Items[MyFooterItems.Count-1].Free;//报错释放刚加入的 End; End;
//删除FooterItems
MyFooterItems := TcxGridDBTableSummaryItem(MyFooterItems[0]); If MyFooterItems.FieldByName<>’’ then For i:= 0 to MyTV.VisibleColumnCount -1 do Begin
AColumn := TcxGridDBColumn(MyTV.VisibleColumns[i]);
If AColumn.DataBinding.FieldName = MyFooterItems.FieldName then Break; End;
If Assigned(MyFooterItems.Column) then MyFooterItems.Items[0].Free;
九、 建Band
Var MyBand : TcxGridBand;
MyBandViewInfo: TcxGridbandViewInfo; MyBand := MyTV.Bands.Add; MyBand.Caption : =’新建带’;
MyBandViewInfo:= MyTV.ViewInfo.HeaderViewInfo.BandsViewInfo[MyBand.visibleIndex]; MyTV.Controller.LeftPos := MyBandViewInfo.Bounds.right;
十、 主从表明细嵌套关联设置
MyTV.DetailKeyFieldNames := mastered; //主表关键列 MyTV.KeyFieldNames := ID; //子表对应关键列 MasterKeyFieldNames := ID;//子表自己的关键列 子表ADOQUERY的indexFieldNames := mastered;
十一、组设置
MyTV.DataController.Groups.FullExpand;//组展开 MyTV.DataController.Groups.Collapse;//组收缩
十二、记录操作
MyTV.Datacontroller.Append;//增加记录 MyTV.Datacontroller.Insert;//插入记录
MyTV.Datacontroller.Values[0.1]:=’a’;//单元格赋值 MyTV.Datacontroller.Cancel;//取消修改 MyTV.Datacontroller.Post;//提交保存
MyTV.Datacontroller.DeleteFocused;//删除当前记录
MyTV.Controller.Controller.FocusedRow.IsFirst ;//是否第一行
MyTV.Controller.Controller.FocusedRow.IsLast ;//是否最后行
MyTV.DataController.Options.FocusTopRowAfterSorting :=True;//排序后指向第一行 MyTV.ViewInfo.VisibleRecordCount ;可见行数
正在阅读:
CXGRID控件使用说明02-02
国家调节权的产生及其根源07-20
教你认识小车车型08-22
管理人员安全环保履职能力评估表11-13
经历后才明白作文03-31
东林精舍近,日暮空闻钟的意思04-28
生物医用材料专题2组织工程材料与人工器官 - - 软组织修复与重建01-18
雷政28号雷峰镇人民政府关于成立雷峰镇开展安全生产大检查06-04
2014浙大远程教育《审计学》5-14章习题答案范文02-26
财会习题集10-01
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 使用说明
- 控件
- CXGRID
- DB31 - 890-2015《公共游泳场所卫生管理规范》上海市地方标准
- 电力安全事故学习与反思
- 安徽重点项目-芜湖三山纳米环保材料及其环保设备与装置总部、研发及生产基地项目可行性研究报告
- 最新苏教版数学小学一年级下册《求两数相差多少的简单实际问题》公开课教学设计1
- 如何减少CTCS3-300T型列控车载设备BTM常见故障
- 奥德弗ERG理论
- 甘肃甜瓜种植
- 收集的所有网格交易法
- 《工程力学》题库(答案)(浙工院星级课程)
- 语文教育教学论文篇九
- 北京交通大学部处函件线上细下粗3000份-北京交通大学经济管理 - 图文
- 高中数学易错、易混、易忘问题集锦
- 材料科学与工程基础300道选择题(答案)
- 上海三年级语文书后词语表,带拼音
- 2016年证券公司总部组织架构和部门职能设计
- 形容词和副词的比较级和最高级以及练习题
- 结构设计中计算参数合理取值探讨
- 建筑消防设施维护管理制度
- 第五章 工程造价各阶段计价与控制
- 英语新交互视听说3答案