社区
VCL组件使用和开发
帖子详情
如何更改DBGrid网格线的颜色?
lyq81404
2003-08-23 06:03:34
如何更改DBGrid网格线的颜色?
...全文
53
2
打赏
收藏
如何更改DBGrid网格线的颜色?
如何更改DBGrid网格线的颜色?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zjqyb
2003-08-23
打赏
举报
回复
void __fastcall TForm1::DBGrid1DrawColumnCell(TObject *Sender,
const TRect &Rect, int DataCol, TColumn *Column,
TGridDrawState State)
{
DBGrid1->Canvas->TextRect(Rect,Rect.left,Rect.top,Column->Field->Text);
DBGrid1->Canvas->Pen->Color=clRed;
DBGrid1->Canvas->MoveTo(Rect.Left,Rect.Top-1);
DBGrid1->Canvas->LineTo(Rect.left+Rect.Width(),Rect.Top-1);
DBGrid1->Canvas->LineTo(Rect.left+Rect.Width(),Rect.Bottom);
}
zjqyb
2003-08-23
打赏
举报
回复
自己在DBGrid1DrawColumnCell处理一下
DB
Grid
控件技巧集
日常开发过程,
DB
Grid
是很常用,但标准的
DB
Grid
往往可能无法解决一些特殊应用场合,比如,自绘
网格线
颜色
、显示CheckBox等。 该技巧集里实现了一些日常我们开发过程所需要,但标准控件不提供的功能。
Delphi美化
DB
Grid
控件表头、格线及
颜色
等,纯Delphi代码
内容索引:Delphi源码,数据库应用,
DB
Grid
纯Delphi代码实现美化
DB
Grid
,不少朋友都会发现,
DB
Grid
缺省的外观样式实在有些单调或缺少创意,用在自己的软件中,美观性实在不敢恭维,但是不用又不行,必竟
DB
Grid
是Delphi中最为普遍的数据显示控件。那么解决问题的方法是我们自己动手美化
DB
Grid
,改变表头、网格、格线前景色和背景色,以及字体大小等,其实也很简单,相信你看了本代码后就会明白其中的原理了。
Jd
Grid
源码控件包加例子
安装时请按照以下序列: Component->Install Packges->
选择Discovery.bpl Options->Library->Search Path 中加入搜索路径。 Easy
Grid
使用说明: 一、单元格属性; // ************************************************** // Easy
Grid
的 Cells[i,j] 属性不同于 String
Grid
。 // String
Grid
的 Cells 仅仅是一个字符串,而 Easy
Grid
// 的 Cells 可以存储丰富的数据类型。 // // 使用范例: // Easy
Grid
1.Cells[1,2].Color := clRed; // 将第一列第二行的一个单元格背景置为红色。 // // !!! 需要注意的是: // 上述语法不会导致网格自动刷新(即结果不会马上反映),因为上述语法 // 实际上是对内存地址直接写入,这样做的好处在于,如果大批量写入数据,这 // 是最快的方法,不会出现慢镜头式的现象。 // 用 Easy
Grid
1.Colors[1,2] := clRed; 可以实现同样效果并实时刷新, // 但大批量写入数据时速度较慢。 // 对大批量写入数据的处理一般需要使用 AutoUpdate 属性: // Easy
Grid
1.AutoUpdate := False; // ... 大批量写入数据 // Easy
Grid
1.AutoUpdate := True; // AutoUpdate 属性的使用类似于一个与
Db
Grid
关联的 DataSource 控件, // 当 DataSource 内容改变时,需要把 DataSource 的 Enabled 属性置为 False。 // 以防止
Db
Grid
出现慢镜头式的现象。 // ************************************************** // ************************************************** // 单元格属性说明如下: TCellInfo = record DataStyle : TDataStyle; // 数据格式 // 可用数据格式为: // TDataStyle = (dsText,dsNumber,dsDate,dsTime,dsFormula); AlignMode : TAlignMode; // 对齐方式 // 可用对齐方式为: // TAlignMode = (taTopLeft, taTop, taTopRight, // taLeft, taCenter, taRight, // taBottomLeft, taBottom, taBottomRight); ReadOnly : Boolean; // 单元格是否可编辑 AutoWor
dB
reak : Boolean; // 文字自动折行 ShowForeText : Boolean; // 显示控制(Default True) // 说明:每个单元格允许存放两个字符串: // ForeText 与 BackText // ShowForeText 属性用于指定该网格显示哪一个字符串 DrawTop : Boolean; // 画顶线 DrawLeft : Boolean; // 画左线 DrawBottom : Boolean; // 画底线 DrawRight : Boolean; // 画右线 // 下面七个属性对于 DataStyle 为 dsNumber (数值型)的网格有效 AllowNegative : Boolean; // 是否允许输入负数 TrailingZero : Boolean; // 是否在小数后面补 0 ZeroNull : Boolean; // 输入数值 0 时是否当作空串处理 ThousandSep : Boolean; // 是否有千分号 MaxLength : Integer; // 最大编辑长度 IntLength : Integer; // 整数部分最大长度 DecLength : Integer; // 小数部分最大长度 LineWidth : Integer; // 边框线宽 PenStyle : TPenStyle; // 线形(TPenStyle 为Delphi定义类型) // Number 用于存储额外的数据,甚至可以用 Pointer() // 强制成32位结构指针,使得网格理论上可以挂接任意类型的数据 Number : Integer; // 存储数值 Color : TColor; // 网格背景
颜色
隔行改变
DB
Grid
网格
颜色
Delphi5 - 隔行改变
DB
Grid
网格
颜色
在 Form1 上放置
DB
Grid
1、Query1、DataSource1 三个数据库组件,设置相关的属性,使
DB
Grid
1 能显示表中的数据。然后,在
DB
Grid
1 的 onDrawColumnCell 事件中键入以下代码,然后运行程序代码:procedure TForm1.
DB
Grid
1DrawColumnCell(Sender: T
Delphi中如何动态
更改
DB
Grid
的
颜色
在Delphi中如何动态
更改
DB
Grid
的
颜色
DB
Grid
控件是一个有许多用户接口的显示数据库的控件,以下的程序告诉您如何根据显示的内容改变字体的显示
颜色
。例如,如果一个城市的人口大于200万,我们就让它显示为蓝色。使用的控件事件为
DB
Grid
.OnDrawColumeCell. procedureTForm1.
DB
Grid
1DrawColumnCell(Sender: T
VCL组件使用和开发
604
社区成员
13,460
社区内容
发帖
与我相关
我的任务
VCL组件使用和开发
C++ Builder VCL组件使用和开发
复制链接
扫一扫
分享
社区描述
C++ Builder VCL组件使用和开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章