procedure Tcl_cgstore.DBGridEh1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
begin
Case adoquery1.RecordCount Mod 2 = 0 of
True: DbGrideh1.Canvas.Brush.Color:=rgb(255,245,249);
False: DbGrideh1.Canvas.Brush.Color:=rgb(247,247,239);
End;
if ((State = [gdSelected]) or (State=[gdSelected,gdFocused])) then
with dbgrideh1 do
begin
Canvas.Brush.color:=rgb(210,234,249);
Canvas.Font.Color:=clBlack;
Canvas.Pen.Mode:=pmMask;
DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;
这段代码多个窗口的dbgrideh用到 我想写个公共过程,在这向各位请教了
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
begin
Case adoquery1.RecordCount Mod 2 = 0 of
True: DbGrideh1.Canvas.Brush.Color:=rgb(255,245,249);
False: DbGrideh1.Canvas.Brush.Color:=rgb(247,247,239);
End;
if ((State = [gdSelected]) or (State=[gdSelected,gdFocused])) then
with dbgrideh1 do
begin
Canvas.Brush.color:=rgb(210,234,249);
Canvas.Font.Color:=clBlack;
Canvas.Pen.Mode:=pmMask;
DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;
这段代码多个窗口的dbgrideh用到 我想写个公共过程,在这向各位请教了
解决方案 »
- 根据管理员和用户不同身份显示不同的信息,管理员可以查看所有,用户查看自己的,但是出错了!!
- 在DBGrid1表格控件中我使用clientdataset1连接数据,当数值为"0"时不显示在DBGrid1中,我该如何写
- 在线等待,求一个SQL语法的自增函数!!!
- 一个有关MDI窗体和COM组件调用的问题,COM专家们请进!
- 如何将数据表的最后一条记录的值赋给变量
- 取特定位置的子字符串
- 我编了一个程序,保存后在打开运行时必须在delphi环境下才能运行,请问怎么能生成可行文件脱离delphi环境
- 请问怎么给numeric型的字段赋值?
- 大家来看看这个问题!如果要对数据库进行频繁的存储时该怎么办?不可能让用户的硬盘一直进行读写呀!!
- type TNotifyEvent = procedure (Sender: TObject) of object中的 of object是什么意思,它与过程类型有什么区别?
- 怎么给分?
- 如何用DBGrid显示DBRichEdi存的格式?
adoquery1 可以用 TDBGridEh(sender).datasource.dataset 替代。
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
begin if (TDBGridEH(Sender).DataSource.DataSet.RecNo Mod 2=0) then
TDBGridEH(Sender).Canvas.Brush.Color:=rgb(255,245,249)
else
TDBGridEH(Sender).Canvas.Brush.Color:=rgb(247,247,239);
if ((State = [gdSelected]) or (State=[gdSelected,gdFocused])) then
with TDBGridEH(Sender) do
begin
Canvas.Brush.color:=rgb(210,234,249);
Canvas.Font.Color:=clBlack;
Canvas.Pen.Mode:=pmMask;
DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
begin
if (TDBGridEH(Sender).DataSource.DataSet.RecNo Mod 2=0) then
TDBGridEH(Sender).Canvas.Brush.Color:=rgb(255,245,249)
else
TDBGridEH(Sender).Canvas.Brush.Color:=rgb(247,247,239);
if ((State = [gdSelected])or(State=[gdSelected,gdFocused]))then
with TDBGridEH(Sender) do
begin
Canvas.Brush.color:=rgb(210,234,249);
Canvas.Font.Color:=clBlack;
Canvas.Pen.Mode:=pmMask;
DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;
错误提示: [Error] pubfunc.pas(30): Undeclared identifier: 'TRect'
[Error] pubfunc.pas(592): Undeclared identifier: 'rgb'
我引用的单元
uses
unit1,ADODB,Un_datamodule,StdCtrls,SysUtils,Dialogs,DBGridEhImpExp,
GridsEh,DBGridEh,Classes,Graphics;最后如果成功 应在其它窗口怎么调用这个过程呢 那么多参数 应怎样给值呢
var
Sender:TObject;Rect:TRect;DataCol:Integer;Column:TColumnEh;State:TGridDrawState;
begin
if (TDBGridEH(Sender).DataSource.DataSet.RecNo Mod 2=0) then
TDBGridEH(Sender).Canvas.Brush.Color:=rgb(255,245,249)
else
TDBGridEH(Sender).Canvas.Brush.Color:=rgb(247,247,239);
if ((State = [gdSelected])or(State=[gdSelected,gdFocused]))then
with TDBGridEH(Sender) do
begin
Canvas.Brush.color:=rgb(210,234,249);
Canvas.Font.Color:=clBlack;
Canvas.Pen.Mode:=pmMask;
DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;
我改了下参数 可是我调用时就不行了 提示地址错误
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
begin
case db1.DataSource.DataSet.RecNo mod 2=0 of
True: Db1.Canvas.Brush.Color:=rgb(255,245,249);
False: Db1.Canvas.Brush.Color:=rgb(247,247,239);
end;
if ((State = [gdSelected]) or (State=[gdSelected,gdFocused])) then
with db1 do
begin
Canvas.Brush.color:=rgb(210,234,249);
Canvas.Font.Color:=clBlack;
Canvas.Pen.Mode:=pmMask;
DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
end;
提示错误 在这一行DefaultDrawColumnCell(Rect,DataCol,Column,State);
[Error] Un_cgstore_find.pas(377): Incompatible types