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

如何在DBGrid实现用回车键就移到下一格,同行完结时,移到下一行?

楼主grjs20030728(啊杰)2003-08-01 01:00:00 在 Delphi / VCL组件开发及应用 提问

如何在DBGrid实现用回车键就移到下一格,同行完结时,移到下一行? 问题点数:0、回复次数:9Top

1 楼wzghh(随风幻想)回复于 2003-08-01 02:27:31 得分 0

在DBGrid的OnKeyPress的事件里写入代码:  
  例子如下:  
  procedure   TForm.DBGridKeyPress(Sender:   TObject;   var   Key:   Char);  
  var  
  n:Integer;  
  begin  
      if   Key=#13   then  
      begin  
          Key:=#0;  
          if   DBGrid1.SelectedIndex<(DBGrid1.Columns.Count-1)   then  
              DBGrid1.SelectedIndex:=n+1  
          else  
          begin  
              Table1{连接到DBGrid1的数据表}.Append;  
              DBGrideh1.SelectedIndex:=0;  
          end;  
      end;  
  end;Top

2 楼ljmanage(过客)回复于 2003-08-01 07:17:45 得分 0

procedure   TForm.DBGridKeyPress(Sender:   TObject;   var   Key:   Char);  
  begin  
      if   Key=#13   then  
      begin  
          Key:=#0;  
          if   DBGrid1.SelectedIndex<(DBGrid1.Columns.Count-1)   then  
              DBGrid1.SelectedIndex:=DBGrid1.SelectedIndex+1  
          else  
          begin  
              DBGrid1.DataSet.next;   //  
              DBGrid1.SelectedIndex:=0;  
          end;  
      end;  
  end;  
  Top

3 楼songandlan(小松一夜听春雨)回复于 2003-08-01 10:29:18 得分 0

我有一個最好的方法(自認為)  
  先將窗體的KEYPREVIEW屬性設為TRUE  
  然后在窗本的KEYDOWN事件里面寫上  
      if   self.ActiveControl   =   self.DBGrid2   then  
      begin  
          if   key=13   then  
          begin  
              key:=9;  
          end  
      endTop

4 楼dickeybird888(小鸟)回复于 2003-08-01 10:56:45 得分 0

procedure   TForm.DBGridKeyPress(Sender:   TObject;   var   Key:   Char);  
  begin  
      if   Key=13   then  
          Key:=9;  
  end;  
   
  设置options中的dgTabs为TrueTop

5 楼snoopyqm()回复于 2003-08-01 11:19:33 得分 0

在DBGrid(假设名为DBGrid1)的OnKeyPress事件中加入下面的代码  
      if   Key=#13   then  
      begin  
          Key:=#0;  
          if   DBGrid1.SelectedIndex<(DBGrid1.Columns.Count-1)   then  
              DBGrid1.SelectedIndex:=DBGrid1.SelectedIndex+1  
          else  
          begin  
              DBGrid1.DataSource.DataSet.next;  
              DBGrid1.SelectedIndex:=0;  
          end;  
      end;Top

6 楼stbrine(brine)回复于 2003-08-16 17:01:07 得分 0

if   self.ActiveControl   =   self.DBGrid2   then  
      begin  
          if   key=13   then  
          begin  
              key:=9;  
              if   DBGrid2.SelectedIndex<(DBGrid2.Columns.Count-1)   then  
                  DBGrid2.SelectedIndex:=DBGrid2.SelectedIndex+1  
              else  
              begin  
                  DBGrid2.DataSource.DataSet.next;  
                  if   DBGrid2.DataSource.DataSet.eof   then  
                      DBGrid2.DataSource.DataSet.Append;  
                  DBGrid2.SelectedIndex:=0;  
              end;  
          end  
      end  
  Top

7 楼stbrine(brine)回复于 2003-08-16 17:02:21 得分 0

补充上行  
   
  在DBGrid2的KEYDOWN事件里Top

8 楼zhusongdong(大漠孤烟)回复于 2003-08-16 19:55:41 得分 0

我的方法是将窗体的KEYPREVIEW属性设为真  
  在DBgrid的KeyDown事件中输入代码:  
  procedure   TForm1.DBGrid1KeyDown(Sender:   TObject;   var   Key:   Word;  
      Shift:   TShiftState);  
  begin  
  if   key=   13   then  
    keybd_event(vk_tab,0,0,0);  
  end;Top

9 楼zousoft(菜菜鸟的战斗诗歌)回复于 2003-08-16 21:31:26 得分 0

真么多方法都挺好的,   楼主结贴吧.Top

相关问题

  • 在DBGrid中如何按回车键将输入焦点定位到相同列的下一行?
  • 在DBGrid中如何按回车键将输入焦点定位到相同列的下一行?
  • 20分,谁能回答我,dbgrid中回车键的用法?
  • 如何在DBGrid中实现使用回车键,切换单元格编辑?
  • 一个小问题,关于回车键盘在dbgrid中的问题!
  • 如何在dbgrid中实现按回车键达到按tab键的效果?
  • 如何读取文本文件的一行文字(包括空格符在内,回车键结束)?
  • 这样屏蔽掉DW里系统自带的回车键下移一行的功能?
  • vsflexgrid控件编辑数据时,按回车键移到下一行,如何实现,急等!!!
  • 用好回车键

关键词

  • 一行
  • dbgrid
  • 实现用回车键
  • 同行完结时
  • key
  • begin

得分解答快速导航

  • 帖主:grjs20030728

相关链接

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

广告也精彩

反馈

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