以身相许!!(100分)

  • 主题发起人 主题发起人 chi8
  • 开始时间 开始时间
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
Label1.caption:=inttostr(TStringGrid(DBGrid1).row);
end;
 
这是对DBGRID的有显示出来的少数几条的排序,查询出来的不只屏幕显示出来的几条。[?]
 
用DBGRID的多行选定了,先把DBGRID的行全选,就能得到它的行数了。
 
没听明白,请稍微给点代码,谢谢!
 
不已经有代码了!你把该代码连接 DBGrid 的 OnCellClick事件
 
to: jsxj你的方法返回的不是我要得
比如 a, b, c, d, e, f, g, h, i,
对应 1,2,3,4,5,6,7,8,9的原来顺序,用QUERY1。RECNO很容易得出顺序
查询后,有 c , d, h,3项满足条件,
可是这时还是显示其条目为: 3, 4,8(用Query1AfterScroll点击//QUERY1。RECNO)
我想要的显示是: 1, 2,3的新顺序!
所以,Label1.caption:=inttostr(TStringGrid(DBGrid1).row);不行,因为查询会返回
很多条目,对屏幕上的几项是不行的

 
在查询时添加一项:
select ...,Recno as MyNo from ...
然后用:
Label1.caption:=Query1.FieldByName('MyNo').asstring;
 
to:jsxjd 我不知道怎么在SQL语句中加这个,你能不能说详细点?
 
你原来的语句是怎么写的?
 
的确我实验了一下,是显示的新条数
但是不知道这个程序是怎么回事,可能我是在form.create中
query1.databaseName:=ExtractfilePath(application.exename)+'data';指定数据库的错?
但是我不知道发布数据库,我用的DBE来发布,不知道怎么动态指定所以有问题吧,你能帮一下吗?
我用INSTALLSHIELD装安装程序时,程序老是认为不在我指定的新目录里读数据库,而是读已在
DBE中指定的路径,请问怎么解决这个问题?
 
在所有的数据记录转移,从开的时候进行一个操作。
比如在数据的打开时候设定:I=1;
数据下移,i:=i+1;
数据上移:i:=i-1;
改变了数据集:i:=0;
…………
将所有关于数据记录的操作都做进行如上的操作。这样就可以了。
 
你不是同性恋吧?[:D]
 
把别的数据库的表加到我的数据库里,用同样的方法,过滤或SQL查询,新放的表都可以正常显示,
但是我的表还是老毛病,是不是定义表的时候就有什么问题?加个字段进去,那不是每次查询的时候都要再计算一次?
 
人妖:)

呵呵,玩儿一笑。
 
问题是加进去行不行,行了就可以了,不存在什么计算问题!
 
我有一笨方法,不知是不是你想要的效果。
原理是:将每条记录的索引值加入一Tstringlist变量中,在dbgrid中新建一计算字段,
再在dbgrid的oncaculated事件中一一对比该索引值,从而得出该记录得ID值...
.
.
.
不明白?
太晚了,明天贴点代码。
来,咱们今晚先洞房[:D][:D]

 
注明性别,如果是plmm就先许了再说,否则免谈
 
欺骗了我感情 。
 
后退
顶部