cxGrid两个知识点:保持设计时的列宽和隔行着色

本文介绍了cxGrid的两个实用技巧:一是通过调整列宽属性及设置columnAutoWidth为true,实现列宽自适应并充满整个区域;二是利用ContentEven、ContentOdd和selection样式轻松完成隔行换色效果。

1、保持合适的列宽且充满整个区域

cxgrid默认情况下,列有一个属性MinWidth,这个属性默认情况下是20,把它改为0。然后把cxgridview的columnAutoWidth设置为true。这样列宽就会在充满整个区域的基础上,根据设计时候的长度进行微调。再也不会在dataset open之后胡乱变换长度了。

2、隔行换色

不能在gridDrawCell事件下写类似于这种的着色代码:

  {if   AViewInfo.RecordViewInfo.Index   mod   2   =   0   then
  begin
    ACanvas.Canvas.Brush.Color   := rgb(252,240,235);
    ACanvas.Font.Color := clblack;
  end
  else
  begin
    ACanvas.Canvas.Brush.Color:=clWhite;
    ACanvas.Font.Color := clblack;
  end;


if AViewInfo.Selected then
  begin
    ACanvas.Canvas.Brush.Color := clmenuhighlight;
    ACanvas.Font.Color := clwhite;
  end; }

这样的着色是有毛病的,如果记录数超过一屏,用鼠标往下拉的时候你就会发现不是隔一行着色,而是一个色。因为gridDrawCell只能处理视觉以内的部分。

cxgridview有三个style可以很方便的设置,不用任何代码,这三个style是:

ContentEven(偶数行style)、ContentOdd(奇数行style)、selection(选中行style)。这三个style可以设置出完美的隔行着色效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值