CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

急!DBGRID问题!

楼主CeleronII(抽烟的鱼)2002-03-27 16:00:00 在 Delphi / VCL组件开发及应用 提问

请问:(1)如何在DBGRID中敲回车实现TAB的功能,即从第一排的第一个字段,跳到第二个字段,再跳到第三个字段,跳到最后一个字段的时候,就跳到下一条记录,以此类推。(2)当从一个字段格跳到下个字段格中的时候,下个字段中的字段内容变为兰色,也就是全部选种的颜色,以此类推  
  如何实现,很急,答对立即给分!!! 问题点数:20、回复次数:7Top

1 楼Cipherliu(孤鹰)回复于 2002-03-27 16:07:03 得分 2

处理KeyDown消息试试看。Top

2 楼tangqin(吞云)回复于 2002-03-27 16:13:30 得分 1

1)   键盘事件。  
  2)DBGRID   行记录颜色控制。  
   
  太多的资料介绍这些。——查书!Top

3 楼CeleronII(抽烟的鱼)回复于 2002-03-27 16:18:01 得分 0

我这里没有书,我也知道这样做,具体点说啊Top

4 楼outer2000(天外流星)回复于 2002-03-27 16:32:34 得分 8

procedure   TForm1.DBGrid1KeyDown(Sender:   TObject;   var   Key:   Word;  
      Shift:   TShiftState);  
  begin  
      if   key=13   then  
    //showmessage(inttostr(DBGrid1.Columns.Count   ));  
      if   dbgrid1.SelectedIndex   <dbgrid1.Columns.Count-1   then  
      begin  
      dbgrid1.SelectedIndex   :=   dbgrid1.SelectedIndex+1;  
      showmessage(inttostr(dbgrid1.SelectedIndex));  
      end  
      else   if     dbgrid1.SelectedIndex=dbgrid1.Columns.Count-1   then  
      begin  
          dbgrid1.SelectedIndex   :=   0;  
   
      end;  
  //     showmessage('asdf');  
  end;  
  Top

5 楼zsz0401()回复于 2002-03-27 16:34:18 得分 5

用方向键可实现你想要的功能  
   
  亦可转化  
   
  用KeyDown事件  
   
  如:  
   
  if   Key=Vk_Return   then  
        Key:=Vk_Down;Top

6 楼thinkcat(思想猫)回复于 2002-03-27 16:39:35 得分 4

procedure   TForm1.DBGrid1KeyDown(Sender:   TObject;   var   Key:   Word;  
  Shift:   TShiftState);  
  var   cur:integer;  
  begin  
  if   key=VK_RETURN   then   begin  
  cur:=dbgrid1.SelectedIndex;  
  if   cur<>dbgrid1.FieldCount-1   then  
  dbgrid1.SelectedIndex:=cur+1  
  else   begin  
  datasource1.DataSet.Next;  
  dbgrid1.SelectedIndex:=0;  
  end;  
  end;  
  end;  
  Top

7 楼lincor()回复于 2002-03-27 17:11:42 得分 0

procedure   TForm1.DBGrid1KeyPress(Sender:   TObject;   var   Key:   Char);  
  begin  
            if   (Key   =   #13)   then  
                    SendMessage(DBGrid1.Handle,WM_KEYDOWN,VK_TAB,0);  
  end;  
  Top

相关问题

  • 关于dbgrid?急!!
  • DBGrid问题?急!!!
  • 急!DBGRID问题!
  • DBGrid问题,,急
  • DBGrid问题!急
  • 急,关于DBGrid?
  • DBGRID问题---急
  • dbgrid问题,急
  • 有关DBGrid,急用!!
  • dbgrid

关键词

  • 字段
  • dbgrid
  • selectedindex
  • key

得分解答快速导航

  • 帖主:CeleronII
  • Cipherliu
  • tangqin
  • outer2000
  • zsz0401
  • thinkcat

相关链接

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

广告也精彩

反馈

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