我想做个人员的排序
表名employee,字段:id ,name ,sort
在dbgrid中想要实现拖拽数据改变显示位置,根据位置重新排序,生成sort中的数字顺序。

解决方案 »

  1.   

    一般排序是在TABLE,QUERY等中才可以实现的.
    你可以在相关的事件里做一个循环,

    i:=0;
    while not query1.eof 
    begin
      i:=i+1;
      query1.edit;
      query1.fieldbyname('sort').value:=i;
      query1.post;
      query1.next;
    end;
      

  2.   

    我主要是想实现dbgrid中记录拖拽功能,赋值我会的:)
      

  3.   

    dbgrid中记录拖拽
    ===============
    DBGrid不是可以拖动的吗?你要达到什么要求呢?排序
    DBGrid1的onTitleClick
    var
      DataSet: TDataSet;
    begin
      {点击标题栏,排序}     //▼ ▲
      
      DataSet := Column.Field.DataSet;
      if not DataSet.Active then exit;  if DataSet is TCustomADODataSet then
      with TCustomADODataSet(DataSet) do
      begin
        if (Pos(Column.Field.FieldName, Sort) = 1) and (Pos(' DESC', Sort) = 0) then
           begin
             Sort := Column.Field.FieldName + ' DESC';
           end
        else
           begin
             Sort := Column.Field.FieldName + ' ASC';
           end;
      end;
      

  4.   

    吐血推荐:dxdbgrid
    www.2ccc.com 有的下!
      

  5.   

    没接触过DBGRID里数据拖拽问题,学习
      

  6.   

    老大pokemonFK(烟鬼)在 www.2ccc.com里没找到
      

  7.   

    ADO的很好排。
    就是insert2003(高级打字员) 的方法