十天前问的一个问题,竟没一个人回答
在cxgrid中怎样实现以下效果
if query1.FieldByName('all').asstring>40 then
begin
dbgrid1.Canvas.Font.Color:=clred;
dbgrid1.Canvas.Brush.color:=clyellow;
end
else
begin
dbgrid1.Canvas.Font.Color:=clblue;
dbgrid1.Canvas.Brush.color:=clyellow;
end;
dbgrid1.DefaultDrawColumnCell(rect,datacol,column,state);
在cxgrid中怎样实现以下效果
if query1.FieldByName('all').asstring>40 then
begin
dbgrid1.Canvas.Font.Color:=clred;
dbgrid1.Canvas.Brush.color:=clyellow;
end
else
begin
dbgrid1.Canvas.Font.Color:=clblue;
dbgrid1.Canvas.Brush.color:=clyellow;
end;
dbgrid1.DefaultDrawColumnCell(rect,datacol,column,state);
解决方案 »
- Delphi可以利用SSH登入Linux存取MYSQL嗎?
- 找工作,狂郁闷!散分
- 编译问题:在一台机子上编译通过的.exe文件,在另一台机子上运行出现问题。
- public问题
- 为什么OpenFileDialog->Execute()弹不出对话框呢?
- TQuery控件访问ODBC数据源一问?
- dbgrid和stringgrid有什么区别?
- delphi 中如何做到flash的图片识别?
- 一个没有边框的窗体中,怎样通过一个按钮实现最小化到状态栏目,我发现他只能到屏幕的左下角.
- 请问动态报表怎么做?
- Delphi有产生一新的GUID的函数吗?
- 大家快来看看! 我用来组织球迷踢足球的Websnap程序! 提点意见吧!
好久没来Delphi论坛了.
看过这个仁兄的代码. 真有点失望...
----if query1.FieldByName('all').asstring>40 then---
这句中一个是asString(string类型). 而40是Integer类型 , 这两个相比. 在Delphi里绝对是低级错误.
用了之后你的应用程序会很大的。少用第三方控件。我有一个同事,QQ名叫“饮天”
他用过。
你自己找吧。
因为那个格太复杂,我们用也只是用一点功能。
不过它的例子中有实现此功能的例子的,只是比较复杂,我就没有去研究了
procedure TFm_Rkcx.GD_RkcxBTCustomDrawCell(Sender: TcxCustomGridTableView;
ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo;
var ADone: Boolean);
var ATextToDraw:String;
ARec: TRect;
begin
ATextToDraw := AViewInfo.GridRecord.DisplayTexts[AViewInfo.Item.Index];
ARec := AViewInfo.Bounds;
if AViewInfo.GridRecord.Values[6]<1000 then
ACanvas.Canvas.Font.Color := clRed;
ACanvas.Canvas.FillRect(ARec);
end;
就行了 * ****
结贴。