delphi下的cxgrid的列值转换问题
我在cxgrid里显示了查询后的数据,但是有些数据还是字典值,比如人员工号列:0001.而在人员表里是0001张三。我想在人员工号列显示具体的人员名字。怎样可以在改变查询...
我在cxgrid里显示了查询后的数据,但是有些数据还是字典值,比如人员工号列:0001.而在人员表里是0001张三。我想在人员工号列显示具体的人员名字。怎样可以在改变查询语句的情况下,让人员工号列的值对应到人员表里,显示人员名字?
怎样可以在不改变查询语句的情况下,让人员工号列的值对应到人员表里,显示人员名字? 展开
怎样可以在不改变查询语句的情况下,让人员工号列的值对应到人员表里,显示人员名字? 展开
2个回答
展开全部
//不改变查询语句
//1、在cxgrid里面的tabelview中新建一个人员名列,起个名colitem2,原有的为colitem1
//2、在该列的ongetdisplaytext,事件中,定义该列显示的数值AText
Atext:=Copy(ARecord.Values[ColItem1.Index],3,5);
//这句的意思是从0001张三获得atext的值
更多追问追答
追问
感谢回答。
我之前学过powerbulider,它里面有个功能,每一列设置dropdowndw,dw里放着员工号-姓名的查询数据,我传入员工号,它就返回姓名。
cxgrid没有类似的功能吗?
在你的答案中提到ARcord指的是什么?怎么建立
追答
你说的dropdowndw在delphi 的功能应该为lookupedit
如果使用cxgrid后,这个在每个字段里的属性会可以设置。。
你点击cxgrid里的某个columns字段后,在属性里可以设置为lookup,然后你可以指定相关的查看数据表的字段与属性,并得到 返回值 。。。
ARecord是 ONgetDisplaytext里的一个局部变量。。是事件自动生成的一个变量。。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询