請教 DBGrid 中怎樣使一行中的,一個字段的Font.Color 改變
如:DBGrid:number Name Class
001 Join 1
002 Tim 1
003 steven 2把 Tim 變為紅色
如:DBGrid:number Name Class
001 Join 1
002 Tim 1
003 steven 2把 Tim 變為紅色
解决方案 »
- 怎样把多个图标添加到EXE中?
- TIdTCPClient和TIdTCPServer的简单通信疑问:
- 关于FASTREPORT动态打印的问题,请高人指教了
- 如何填充image里,除导入图片外,其它范围的颜色?
- 怎么读取RGB的值并返回一个TColor对象
- 如何画曲线图表
- 在DELPHI中如何隐藏“打印预览”窗口中的按钮,如我想隐藏“帮助”、“分页预览”按钮,如何实现?诚意请教
- 谁有办法将qreport预览窗体上的close改成中文
- API串口通信的问题???
- 谁有压缩EXE文件的软件?
- 有没有吉林市的朋友,进来聚一下,留个QQ!!
- 小弟菜鸟,刚才开始学习DELPHI,搞数据库遇到问题,请教大侠!
if uppercase(Column.FieldName) = 'NAME' then
if Column.Field.Value = 'Tim' then
DBGrid1.Canvas.Font.Color := clRed;
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
begin
DBGrid1.Canvas.Font.Color := clRed;
DBGrid1.Canvas.TextRect(Rect,Rect.Left+3 ,Rect.Top+
2,Column.Field.DisplayText);
end;
我用普通的db库没问题
用sql server .和oracle 就不行..
例如,对表中某字段当其数值小于0时为红字,其他为黑字.
在 DBGrid.OnDrawColumnCell(...) 中:
begin
if TableField.AsInteger < 0 then
DBGrid.Canvas.Font.Color := clRed
else
DBGrid.Canvas.Font.Color := clBlack;DBGrid.DefaultDrawColumnCell(...);
end;
然后在ONDRAWCOLUMNCELL事件中加入如下代码:
if field.value='您确定的值' then
begin
canvas.font.color:=clred;
end;
以上的方法把整行 Font.Color 都改變了顺子妹妹:你的方法行不通