请问各位: 在delphi怎样实现TGrideh中某个格子设定颜色,而不是某整行或某整列全部设为一种颜色,是根据里面的数值设定某个格子的颜色(比如出现负数的为红色,大于零为绿等) 请问有办法解决吗?!!!

解决方案 »

  1.   

    【定制单元格字体及颜色】
        TDBGridEh 中的 Font 和 Color 属性描述了数据网格中绘制单元格的字体和颜色。
        TColumnEh 中的 Font 和 Color 属性描述了指定列中绘制单元格的字体和颜色。 【事件定制单元格字体及颜色】 
        有几个事件可以让你能够在绘制单元格前定制单元格字体和颜色。你可以写TDBGridEh的OnDrawColumnCellEvent事件句柄来在控制在网格单元中绘制数据。你可以使用Canvas属性的方法来绘制单元格。但是如果你只想改变字体或颜色的属性,我建议你使用下面的事件。你可以写TDBGridEh的OnGetCellParams事件来控制在绘制数据单元以前所指定的操作。你可以改变绘制字体及背景色。这个事件适合你在想改变整行的字体或颜色时使用。如果你想改变指定列中单元格的属性,你可以使用TColumnEh.OnGetCellParams。写这个事件用来控制在一列数据单元被重绘或编辑时的操作。在一列数据单元被重绘以前,你可以改变绘制字体,背景色,对齐方式,图像索引,文本或检查框。在编辑一列数据单元以前,你可以改变编辑字体,背景色,文本或只读状态。