DBGrid色彩问题:设定DBGRID记录的颜色,每隔一行是相同的颜色 (100分)

  • 主题发起人 主题发起人 kingfei
  • 开始时间 开始时间
K

kingfei

Unregistered / Unconfirmed
GUEST, unregistred user!
  1.请问怎样在Win2000的机器上给Win98的机器发送控制台信息?
  就是在服务器上给客户端发送信息,最好是弹出对话框的形式。
  2。我试了这样做:在dbgrid的onDrawColumnCell 事件中
with TDbgrid(sender) do
begin
if DataSource.DataSet.fields[0]=.. then //条件

canvas.Brush.color:=$00E2F3EB else
canvas.brush.color:=Clwhite;
DefaultDrawColumnCell(rect,datacol,column,state);
end;

可以好象不好用,并不能真正实现。关键是我的表的主键是String,不能通过判断奇偶来限定。
请各位指教!不胜感激。
 
net sent 机器名(可以用*) 发送消息
win98只有启支winpop才能收到信息
 
net send 在98上好象不行,这是NT的功能!
 
能不能说的更详细一点啊,我是要在Delphi里实现的。
谢谢。
 
各位大虾,拜托了,请来关注一下,怎么样啊!
现在真是有点急了。
 
1、这个问题好象以前的贴子里有,找找看,我本来有个例程,但找不见了!
2、试试这种方法:在DBGrid 的 DrawColumnCell 事件中进行如下处理:
if DataSource.DataSet.fields[0]=.. then //条件
begin
DBGrid1.Canvas.Font.Color:=clRed;//红色显示
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
 
刚才可能表达不清楚,我是这个意思,假设DBGrid 连一个Query,
我每次检索可能是不同的数据,但在DBGrid中的显示中
其奇数行是一个颜色,偶数行是另一个颜色。
最好是不要在数据上加判断。

谢谢。
 
if (DataSource.DataSet.recno mod 2) then //条件
begin
DBGrid1.Canvas.Font.Color:=clRed;//红色显示
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
 
应该 if (DataSource.DataSet.recno mod 2)=1 then //条件
  begin
DBGrid1.Canvas.Font.Color:=clRed;//红色显示
DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end;
就对了,很好,非常感谢大家捧场!
 
多人接受答案了。
 
后退
顶部