CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

关于DBGrid中行和列的问题:

楼主zsjzwj(北极熊)2003-09-04 09:51:37 在 Delphi / VCL组件开发及应用 提问

 
   
  我想在状态栏中动态显示DBGrid中的当前行和列,请问如何实现?  
  问题点数:20、回复次数:12Top

1 楼visli()回复于 2003-09-04 10:19:57 得分 0

procedure   TForm1.DBGrid1CellClick(Column:   TColumn);  
  var  
      i,   j:   integer;     //行号     列号  
  begin  
      i   :=   inttostr(table1.RecNo);  
      j   :=   inttostr(column.id);                 //或是index  
  end;Top

2 楼visli()回复于 2003-09-04 10:21:47 得分 0

procedure   TForm1.DBGrid1CellClick(Column:   TColumn);  
  var  
      i,   j:   integer;     //行号     列号  
  begin  
      i   :=   inttostr(table1.RecNo);  
      j   :=   inttostr(column.id);                 //或是index  
  end;Top

3 楼IwantFlay(小飞)回复于 2003-09-04 10:28:18 得分 0

procedure   TForm1.DBGrid1CellClick(Column:   TColumn);  
  var  
      intCol,   intRow:   integer;     //行号     列号  
  begin  
      intRow   :=GBGrid1.DataSource.DataSet.Recno;  
      intcol   ;=DBGrid1.Col;  
  end;  
  Top

4 楼zhudongpo(phil)回复于 2003-09-04 10:35:27 得分 0

procedure   TForm1.DataSource1DataChange(Sender:   TObject;   Field:   TField);  
  var  
      i,   j:   integer;     //行号     列号  
  begin  
      i   :=   inttostr(table1.RecNo);  
      j   :=   inttostr(column.index);                  
  end;  
  Top

5 楼Niuniu2003(牛牛)回复于 2003-09-04 11:06:48 得分 15

type  
      TGrid   =   class(TDBGrid);  
   
  procedure   TForm1.DBGrid1Enter(Sender:   TObject);  
  var  
      I,J:   Integer;  
  begin  
      I:=   TGrid(DBGrid1).Row;  
      J:=   TGrid(DBGrid1).col;  
  end;Top

6 楼zsjzwj(北极熊)回复于 2003-09-04 11:58:41 得分 0

我使用  
  procedure   TForm1.DBGrid1CellClick(Column:   TColumn);  
  var  
      intCol,   intRow:   integer;     //行号     列号  
  begin  
      intRow   :=GBGrid1.DataSource.DataSet.Recno;  
      intcol   ;=DBGrid1.Col;  
  end;  
   
        但行有了,却在intcol:=DBGrid1.Col;   出现编译错误!   如何解决?  
  Top

7 楼Niuniu2003(牛牛)回复于 2003-09-04 17:39:00 得分 0

你用下面的保你没错,我测试过的。  
  type  
      TGrid   =   class(TDBGrid);  
   
  procedure   TForm1.DBGrid1Enter(Sender:   TObject);  
  var  
      I,J:   Integer;  
  begin  
      I:=   TGrid(DBGrid1).Row;  
      J:=   TGrid(DBGrid1).col;  
  end;  
   
  Top

8 楼zsjzwj(北极熊)回复于 2003-09-05 19:47:43 得分 0

to     Niuniu2003(牛牛)   :  
   
      不用不行呀!  
   
  在   TGrid   =   class(TDBGrid);   编译通不过呀!Top

9 楼frogshero(头疼)回复于 2003-09-05 19:57:29 得分 0

TGrid   =   class(TDBGrid);   你放哪了?Top

10 楼zsjzwj(北极熊)回复于 2003-09-06 10:57:23 得分 0

unit   Unit1;  
   
  interface  
   
  uses  
      Windows,   Messages,   SysUtils,   Variants,   Classes,   Graphics,   Controls,   Forms,  
      Dialogs;  
   
  type  
      TForm1   =   class(TForm)  
      TGrid   =   class(TDBGrid)  
      private  
          {   Private   declarations   }  
      public  
          {   Public   declarations   }  
      end;  
  Top

11 楼frogshero(头疼)回复于 2003-09-06 11:42:50 得分 0

unit   Unit1;  
   
  interface  
   
  uses  
      Windows,   Messages,   SysUtils,   Variants,   Classes,   Graphics,   Controls,   Forms,  
      Dialogs;  
   
  type  
      TGrid   =   class(TDBGrid)       <---ok  
      TForm1   =   class(TForm)  
      private  
          {   Private   declarations   }  
      public  
          {   Public   declarations   }  
      end;  
   
  Top

12 楼frogshero(头疼)回复于 2003-09-06 11:43:34 得分 5

unit   Unit1;  
   
  interface  
   
  uses  
      Windows,   Messages,   SysUtils,   Variants,   Classes,   Graphics,   Controls,   Forms,  
      Dialogs;  
   
  type  
      TGrid   =   class(TDBGrid);       <---ok  
      TForm1   =   class(TForm)  
      private  
          {   Private   declarations   }  
      public  
          {   Public   declarations   }  
      end;  
  Top

13 楼Niuniu2003(牛牛)回复于 2003-09-08 16:25:48 得分 0

注意:TGrid   =   class(TDBGrid);的位置;   同时在uses下引用Grids,   DBGrids;  
  例如:  
   
  unit   Unit1;  
   
  interface  
   
  uses  
      Windows,   Messages,   SysUtils,   Variants,   Classes,   Graphics,   Controls,   Forms,  
      Dialogs,   Grids,   DBGrids;  
   
  type  
      TGrid   =   class(TDBGrid);  
      TForm1   =   class(TForm)  
          DBGrid1:   TDBGrid;  
          procedure   DBGrid1ColEnter(Sender:   TObject);  
      private  
          {   Private   declarations   }  
      public  
          {   Public   declarations   }  
      end;  
   
  var  
      Form1:   TForm1;  
   
  implementation  
   
  {$R   *.dfm}  
   
  procedure   TForm1.DBGrid1ColEnter(Sender:   TObject);  
  var  
      I,J:   Integer;  
  begin  
      I:=   TGrid(DBGrid1).Row;  
      J:=   TGrid(DBGrid1).col;  
   
  end;  
   
  end.  
  Top

相关问题

  • DBGrid选中行的问题
  • Dbgrid控件中行焦点的切换
  • EXCEL中行高和列宽的单位是什么
  • 难题:DBGrid中行的高度怎么改变?
  • 如何取得dbgrid所选中行的值?
  • 怎么给dbgrid的选中行换颜色?
  • 如何用代码改变我DBGRID的选中行?
  • 急急急,关于DBGrid取选中行的数据。
  • 在DBGrid中选中多行数据后,如何得到选中行中某一列的数据!有例子更好!
  • dbgrid中如何获得当前选中行的关键字段的值?

关键词

  • tgrid
  • dbgrid
  • cellclick
  • tdbgrid
  • inttostr
  • recno
  • procedure tform
  • tcolumn
  • 行号列号begin
  • column

得分解答快速导航

  • 帖主:zsjzwj
  • Niuniu2003
  • frogshero

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo