C++Builder中关于TcxGrid的使用总结


C++ Builder中关于TcxGrid内TcxGridColumn的使用

初识TcxGrid,资料太难找,通过对TcxGrid的使用,暂时学习总结这么多。

这里定义一个TcxGridColumn列控件的Name为strColumn(这里定义它的Caption名为capName),一个包含TcxGrid的类指针为scrn



1.对某一列添加过一个滤条件(例如:capName = aaa(即过滤capName列里为aaa的数据))

scrn->strColumn->DataBinding->Filter->Root->AddItem(scrn->strColumn,firstOperatorKind,keyStrfirst.c_str(),keyStrfirst.c_str());
scrn->strColumn->DataBinding->Filter->Active = true;
这就对strColumn添加了一个过滤条件,参数firstOperatorKind为符号,这里相当于例子中的“=”
                   参数keyStrfirst(第一个)为过滤中的条件,这里相当于例子中的“aaa”
                   参数keyStrfirst(第二个)为在显示在TcxGrid内,对已选择所有过滤条件显示条目的设置。
无特殊要求的话,一般后两个参数都一致。
scrn->strColumn->DataBinding->Filter->Active = true;是对当前的设置刷新。


2.对某一列添加一个Custom条件(即两个的复合条件)(例如:(capName = aaa) and (capName <> bbb))

TcxFilterCriteriaItemList *AItemList =scrn->strColumn->DataBinding->Filter->Root->AddItemList(tboperator);
AItemList->AddItem(scrn->strColumn,firstOperatorKind,keyStrfirst.c_str(),keyStrfirst.c_str());
AItemList->AddItem(scrn->strColumn,secondOperatorKind,keyStrsecond.c_str(),keyStrsecond.c_str());
FilterName->DataBinding->Filter->Active = true;
这里TcxFilterCriteriaItemList应该是个调用的一个库类,“tboperator”,是一个变量(值为and或or),用来表示接下来添加的两个复合条件的

关系(and或or)。


3.对多个列添加过滤条件
FilterName->DataBinding->Filter->Root->BoolOperatorKind=tboperator;
FilterName->DataBinding->Filter->Root->AddItem(FilterName,secondOperatorKind,keyStrsecond.c_str(),keyStrsecond.c_str());
FilterName->DataBinding->Filter->Active = true;

FilterName->DataBinding->Filter->Root->BoolOperatorKind=tboperator;用来设置列与列之间的关系(不设置的话默认为and)

对多个列按照3的方法设置,是一种复合条件过滤。



4.读取每列的过滤条件:
scrn->strColumn->DataBinding->Filter->FilterCaption;
或者
scrn->strColumn->DataBinding->Filter->FilterText;

两者都是,获取当前所有列的过滤条件为字符串。

区别:FilterText获取的字符串把过滤条件都带有单引号(如:‘ccc’),FilterCaption没有分号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值