dbgridEH 加序号怎么实现的??

icuso 2007-11-06 08:28:43
dbgridEH 加序号怎么实现的??
序号要放在左边的灰色栏不是放在数据区~~~~
效果如链接的图
http://www.programbbs.com/bbs/view12-7729-1.htm
...全文
426 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenyehuang 2008-01-16
  • 打赏
  • 举报
回复
嗯.收下.
icuso 2007-11-08
  • 打赏
  • 举报
回复
xuxugr 你说的例子产生序号还是在数据区的
icuso 2007-11-08
  • 打赏
  • 举报
回复
xuxugr 你说的例子在编译时出现

[Error] Unit2.pas(185): Missing operator or semicolon
[Fatal Error] Unit1.pas(34): Could not compile used unit 'Unit2.pas'

要怎样解决吗??
icuso 2007-11-07
  • 打赏
  • 举报
回复
可以自画吗??

以下语句都可以放在数据区产生序号 但放不到DBGRIDEH灰色的左栏


1、
begin
if DataCol = 0 then //設置在第一列
begin
if DBGrideh1.DataSource.DataSet.state<>dsInsert then
i:= DBGrideh1.DataSource.DataSet.recno; //這句是關鍵。。。
DBGrideh1.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, IntToStr(i));
//inc(i); //將这名改为以下内容
if i<=dbgrideh1.DataSource.DataSet.RecordCount then
inc(i)
else
i:=dbgrideh1.DataSource.DataSet.RecordCount +1; end;
end;

2、更简单的语句
{ begin
if Column.Index = 0 then
with DBGrideh1.Canvas do begin
FillRect(Rect);
TextOut(Rect.Left+2, Rect.Top+2, IntToStr(DBGrideh1.DataSource.DataSet.RecNo));

end;

hushu02 2007-11-07
  • 打赏
  • 举报
回复

用MyDBGridEh 这个控件可以
Bear_hx 2007-11-07
  • 打赏
  • 举报
回复
这个要修改源代码,没有方法何属性提供的
xuxugr 2007-11-07
  • 打赏
  • 举报
回复
procedure TForm1.DBGridEh1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumnEh;
State: TGridDrawState);
begin
DBGridRecordSize(Column);
if Column.Index = 0 then
if DBGridEh1.SumList.RecNo <> -1 then
DBGridEh1.Canvas.TextRect(Rect, Rect.Left + 3, Rect.Top + 2,
IntToStr(DBGridEh1.SumList.RecNo));
end;
给分吧,我用过的
hushu02 2007-11-07
  • 打赏
  • 举报
回复

恩 放在数据区不是难事
要用DBGridEh估计要改控件。

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧