CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  数据库相关

DBGrid显示问题(在线等待!)

楼主yxctxg(猪猪)2005-05-08 19:53:55 在 Delphi / 数据库相关 提问

我的一个数据库表有20个字段,用DBGrid显示的,我的目的是随着鼠标左右拖动,第一个字段的内容始终显示在最左边,如何实现呢,我很困惑,请大家多多帮忙! 问题点数:60、回复次数:18Top

1 楼real_name(*真名)回复于 2005-05-08 20:11:00 得分 10

在   grid   的GridDragOver   事件中   判断   列号   是否是1  
  是就   exit;Top

2 楼yxctxg(猪猪)回复于 2005-05-08 20:53:33 得分 0

real_name(*真名),非常感谢,不过不好意思,我很笨,怎么判断列号为1呀?Top

3 楼yxctxg(猪猪)回复于 2005-05-08 20:59:38 得分 0

real_name(*真名),麻烦能给我写的详细一些吗?Top

4 楼yxctxg(猪猪)回复于 2005-05-08 20:59:58 得分 0

real_name(*真名),麻烦能给我写的详细一些吗?Top

5 楼smiler007(笑一笑)回复于 2005-05-08 22:22:27 得分 10

用   EHLIB   控件包中的   DBGridEH   组件,轻松实现楼主的要求.....  
  www.2ccc.com中有下载...Top

6 楼yxctxg(猪猪)回复于 2005-05-09 09:09:40 得分 0

smiler007(笑一笑)   ,我没有找到你说的那个控件,请帮忙把具体的网址告诉我好吗?还有我的目的是第一列始终显示在最左边,其他列随着鼠标的移动式变化的。Top

7 楼naner_china(naner)回复于 2005-05-09 09:12:21 得分 20

加我的QQ42719489  
  我传给你Top

8 楼naner_china(naner)回复于 2005-05-09 09:22:37 得分 0

控件dxdbgrid  
   
  双击dxdbgrid  
  bands   选项里面添加一个新1-dxlistband  
  Columns   设置第一列的bandindex   为0(0-dxlistband)  
  其他列为1(1-dxlistband)  
  这样就实现你要的功能  
  Top

9 楼yxctxg(猪猪)回复于 2005-05-09 14:36:41 得分 0

naner_china(naner),晚上我用qq找你,你再传给我,好吗?Top

10 楼naner_china(naner)回复于 2005-05-09 16:57:08 得分 0

好吧Top

11 楼yxctxg(猪猪)回复于 2005-05-10 11:08:38 得分 0

naner_china(naner),你发给我的怎么下载不了,所以我的问题仍然没有解决,希望大家再多帮忙!Top

12 楼smiler007(笑一笑)回复于 2005-05-10 11:43:53 得分 0

http://www.delphifans.com/SoftView/SoftView_1230.html  
   
  在这儿下载吧Top

13 楼luckyM(LuckyChen)回复于 2005-05-10 12:17:57 得分 10

cxgrid    
  删去cxGrid1上的cxGrid1DBTableView1  
  新建DB   Banded   Table以实现,  
  在cxGrid1DBBandedTableView里建立Band0,Band1,Band2  
  Band0的Fixed=tfLeft  
  Band1的Fixed=tfnone  
  Band2的Fixed=tfRight  
  设置column下要锁定的字段的BandIndex=0/1/2,左固定/不固定/右固定;  
     
  Top

14 楼bxyqt(碧血银枪)回复于 2005-05-10 16:16:54 得分 10

type  
      TForm1   =   class(TForm)  
                procedure   FormActivate(Sender:   TObject);  
      private  
          {   Private   declarations   }  
      public  
          {   Public   declarations   }  
      end;  
  //增加一个声明定义:  
  type  
    TMyGrid   =   Class(TDBGrid)  
  end;  
   
  var  
      Form1:   TForm1;  
   
  implementation  
   
  {$R   *.dfm}  
   
  procedure   TForm1.FormActivate(Sender:   TObject);  
  //设置锁定的列数  
  begin  
      TMyGrid(DbGrid1).FixedCols   :=   2;  
  end;  
  Top

15 楼bxyqt(碧血银枪)回复于 2005-05-10 16:20:29 得分 0

上面说的意思是:在form声明后加一个mygrid   声明,然后在form1   的onactivate方法中锁定左边的列。列数为要锁定数目上加1。Top

16 楼yxctxg(猪猪)回复于 2005-05-15 18:37:33 得分 0

bxyqt(碧血银枪),谢谢,我试一下。Top

17 楼yxctxg(猪猪)回复于 2005-05-19 10:02:53 得分 0

非常感谢bxyqt(碧血银枪),你的代码是可以实现我的功能,可是当我在DBGrid中拖动鼠标改变列宽度时,这个功能就消失了,而且第一列也不显示字段名,只是空白一格,为什么呢?Top

18 楼yxctxg(猪猪)回复于 2005-05-19 10:05:01 得分 0

我的问题还是没有解决,还请大家多多帮忙!Top

相关问题

  • 如何格式化dbgrid(7.0)控件的固定列为序号(0,1,2,3,4.....)显示?在线等待中。。。
  • 我已经连上了数据库,DBGrid里却无法显示?(在线等待,马上给分)
  • 请问如何在使用DBGrid控件的时候让它显示多行?在线等待,马上结贴……
  • 在线等待:请问如何根据某一字段来控制DBgrid的显示颜色
  • 我想在dbgrid里的数据做出电子显示屏的效果,怎么做?急,在线等待
  • 如何控制显示!!在线等待
  • DBEdit显示问题--在线等待
  • 在线等待(MDI)显示子窗体
  • 如何获得Dataset作数据源的DBGrid中的某一行的其中一个字段的显示的值。(在线等待)
  • 时间显示问题,等待,在线等待!

关键词

  • 字段
  • 控件
  • 鼠标
  • 下载
  • real
  • naner
  • cxgrid
  • dbgrid
  • 真名
  • band

得分解答快速导航

  • 帖主:yxctxg
  • real_name
  • smiler007
  • naner_china
  • luckyM
  • bxyqt

相关链接

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

广告也精彩

反馈

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