各位兄弟:
我用到了BussinessSkinForm 里的bsskindbgrid控件.在我想改变此grid的某一列的颜色时,它跳出错误说:memory overflow,不知是怎么回事啊。代码如下:TMyCustomDBGrid = class(TbsskincustomDBGrid);procedure Tf_emp_tran.bsSkinDBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TbsColumn;
State: TGridDrawState);
var shouldprice,realprice,sum1:currency;
begin
if AQ_emp_tran.RecordCount>0 then
with TMyCustomDBGrid(Sender) do
begin
shouldprice:= DataLink.Fields[2].value;
realprice:= DataLink.Fields[3].value;
sum1:=shouldprice-realprice;
if (sum1>0) and (datacol=3) then
Canvas.Font.Color := clred
else
Canvas.font.Color :=clInfoText;
DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
另外我发现,就算是我手动到grid栏里的column去修改颜色,运行时,它一样没动静????唉,怎么办呢?
我用到了BussinessSkinForm 里的bsskindbgrid控件.在我想改变此grid的某一列的颜色时,它跳出错误说:memory overflow,不知是怎么回事啊。代码如下:TMyCustomDBGrid = class(TbsskincustomDBGrid);procedure Tf_emp_tran.bsSkinDBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TbsColumn;
State: TGridDrawState);
var shouldprice,realprice,sum1:currency;
begin
if AQ_emp_tran.RecordCount>0 then
with TMyCustomDBGrid(Sender) do
begin
shouldprice:= DataLink.Fields[2].value;
realprice:= DataLink.Fields[3].value;
sum1:=shouldprice-realprice;
if (sum1>0) and (datacol=3) then
Canvas.Font.Color := clred
else
Canvas.font.Color :=clInfoText;
DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;
另外我发现,就算是我手动到grid栏里的column去修改颜色,运行时,它一样没动静????唉,怎么办呢?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货