没接触过这类问题
if Query1.FieldByName('结存').AsInteger = 0 then //判断时cell是否已画出来了?此时更改color是不是迟了?
DBGrid1.Canvas.Brush.Color := clRed;
DBGrid1.DefaultDrawDataCell(Rect, Field, State);
我没试过,猜测…………
解决方案 »
- winexec执行执行DOS命令,完毕时如何暂停在DOS窗口?需要看结果
- 过于RxRichedit插入的动态图片不能在win2000运行的问题(分不够就加)
- 没分了,大家帮帮忙.
- 请试用我最近做的纯绿色一键修复软件,支持在线升级,最近都免费的
- clientdataset 单机系统 数据在cds中,如何进行查询,可否使用sql语句
- 求教:请问如何禁用键盘的开始键?分不够,可以加
- VCL高手请入,TtreeView的用法。
- 怎样给dbgrid1中对应数据集的某一列用变量赋一个值?
- 在treeview怎样实现项目的单项展开?
- 请教一句sql语句!
- 如何动态清除TIMAGE控件的内容?
- 看来此论坛无能人也!无人会回答此问题!都是一群笨蛋!!!
DBGrid1.Canvas.Brush.Color := clRed;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
Field: TField; State: TGridDrawState);
begin
if (TDBGrid(Sender).DataSource.DataSet.FieldByName('结存').AsInteger = 0) or
TDBGrid(Sender).DataSource.DataSet.FieldByName('结存').IsNull then
TDBGrid(Sender).Canvas.Font.Color := clRed;
TDBGrid(Sender).DefaultDrawDataCell(Rect, Field, State);
end;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if (TDBGrid(Sender).DataSource.DataSet.FieldByName('结存').AsInteger = 0) or
TDBGrid(Sender).DataSource.DataSet.FieldByName('结存').IsNull then begin
TDBGrid(Sender).Canvas.Font.Color := clRed;
TDBGrid(Sender).Canvas.Font.Color := clRed;
TDBGrid(Sender).DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if (TDBGrid(Sender).DataSource.DataSet.FieldByName('单价').AsInteger = 0) or
TDBGrid(Sender).DataSource.DataSet.FieldByName('单价').IsNull then begin
TDBGrid(Sender).Canvas.Font.Color := clRed;
TDBGrid(Sender).DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
if Query1.FieldByName('结存').AsInteger = 4 then
DBGrid1.Canvas.Brush.Color := clRed;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
哪个DataCol怎么包错呀
DataCol说是没有申明
// ~~~~~~~~~~~~~~~~~~~~~
DataCol: Integer; Column: TColumn; State: TGridDrawState);
嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻
嘻嘻嘻不就可以了嘻嘻嘻嘻
嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻嘻