社区
VCL组件使用和开发
帖子详情
如何更改DBGrid网格线的颜色?
lyq81404
2003-08-23 06:03:34
如何更改DBGrid网格线的颜色?
...全文
56
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处理一下
DBGrid
控件技巧集
日常开发过程,
DBGrid
是很常用,但标准的
DBGrid
往往可能无法解决一些特殊应用场合,比如,自绘
网格
线
颜色
、显示CheckBox等。 该技巧集里实现了一些日常我们开发过程所需要,但标准控件不提供的功能。
Delphi美化
DBGrid
控件表头、格
线
及
颜色
等,纯Delphi代码
内容索引:Delphi源码,数据库应用,
DBGrid
纯Delphi代码实现美化
DBGrid
,不少朋友都会发现,
DBGrid
缺省的外观样式实在有些单调或缺少创意,用在自己的软件中,美观性实在不敢恭维,但是不用又不行,必竟
DBGrid
是Delphi中最为普遍的数据显示控件。那么解决问题的方法是我们自己动手美化
DBGrid
,改变表头、
网格
、格
线
前景色和背景色,以及字体大小等,其实也很简单,相信你看了本代码后就会明白其中的原理了。
JdGrid源码控件包加例子
安装时请按照以下序列: Component->Install Packges->
选择Discovery.bpl Options->Library->Search Path 中加入搜索路径。 EasyGrid 使用说明: 一、单元格属性; // ************************************************** // EasyGrid 的 Cells[i,j] 属性不同于 StringGrid。 // StringGrid 的 Cells 仅仅是一个字符串,而 EasyGrid // 的 Cells 可以存储丰富的数据类型。 // // 使用范例: // EasyGrid1.Cells[1,2].Color := clRed; // 将第一列第二行的一个单元格背景置为红色。 // // !!! 需要注意的是: // 上述语法不会导致
网格
自动刷新(即结果不会马上反映),因为上述语法 // 实际上是对内存地址直接写入,这样做的好处在于,如果大批量写入数据,这 // 是最快的方法,不会出现慢镜头式的现象。 // 用 EasyGrid1.Colors[1,2] := clRed; 可以实现同样效果并实时刷新, // 但大批量写入数据时速度较慢。 // 对大批量写入数据的处理一般需要使用 AutoUpdate 属性: // EasyGrid1.AutoUpdate := False; // ... 大批量写入数据 // EasyGrid1.AutoUpdate := True; // AutoUpdate 属性的使用类似于一个与
DbGrid
关联的 DataSource 控件, // 当 DataSource 内容改变时,需要把 DataSource 的 Enabled 属性置为 False。 // 以防止
DbGrid
出现慢镜头式的现象。 // ************************************************** // ************************************************** // 单元格属性说明如下: TCellInfo = record DataStyle : TDataStyle; // 数据格式 // 可用数据格式为: // TDataStyle = (dsText,dsNumber,dsDate,dsTime,dsFormula); AlignMode : TAlignMode; // 对齐方式 // 可用对齐方式为: // TAlignMode = (taTopLeft, taTop, taTopRight, // taLeft, taCenter, taRight, // taBottomLeft, taBottom, taBottomRight); ReadOnly : Boolean; // 单元格是否可编辑 AutoWordBreak : 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; //
网格
背景
颜色
隔行改变
DBGrid
网格
颜色
Delphi5 - 隔行改变
DBGrid
网格
颜色
在 Form1 上放置
DBGrid
1、Query1、DataSource1 三个数据库组件,设置相关的属性,使
DBGrid
1 能显示表中的数据。然后,在
DBGrid
1 的 onDrawColumnCell 事件中键入以下代码,然后运行程序代码:procedure TForm1.
DBGrid
1DrawColumnCell(Sender: T
Delphi中如何动态
更改
DBGrid
的
颜色
在Delphi中如何动态
更改
DBGrid
的
颜色
DBGrid
控件是一个有许多用户接口的显示数据库的控件,以下的程序告诉您如何根据显示的内容改变字体的显示
颜色
。例如,如果一个城市的人口大于200万,我们就让它显示为蓝色。使用的控件事件为
DBGrid
.OnDrawColumeCell. procedureTForm1.
DBGrid
1DrawColumnCell(Sender: T
VCL组件使用和开发
604
社区成员
13,459
社区内容
发帖
与我相关
我的任务
VCL组件使用和开发
C++ Builder VCL组件使用和开发
复制链接
扫一扫
分享
社区描述
C++ Builder VCL组件使用和开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章