想请教一下各位o(∩_∩)o cxGrid中的数据并非绑定数据集,而是代码中添加
我想实现在cxGrid中拖动换行,可是不明白具体怎么实现o(∩_∩)o 希望各位
高手不吝赐教一下o(∩_∩)o 

解决方案 »

  1.   

    不知楼主的意思是否要行位置变换,假如这样的话可否通过数据集的动态排序来做这项工作,而不必限于CXGRID,当然列排序应该是通过控件解决。
      

  2.   

    //实现鼠标拖动多选,必须设置
    //cxGrid1DBTableView1.DragMode=dmAutomatic;
    //cxGrid1DBTableView1.OptionsBehavior.DragFocusing:=dfDragOver;qsRow,jsRow:Integer;//用于保存行位置procedure TBase_f.cxGrid1DBTableView1StartDrag(Sender: TObject;
    var DragObject: TDragObject);
    begin
    qsrow:=MainQuery.RecNo; //保存起始行位置
    end;procedure TBase_f.cxGrid1DBTableView1DragOver(Sender, Source: TObject;
    X, Y: Integer; State: TDragState; var Accept: Boolean);
    begin
    Accept:=True;
    end;procedure TBase_f.cxGrid1DBTableView1EndDrag(Sender, Target: TObject;
    X, Y: Integer);
    begin
    jsRow:=Main.RecNo;//结束行的位置
    if qsrow=jsrow then Exit;//如果相同则直接退出
    //设置临时变量保存记录内容,删除当前位置记录内容...进一步操作
    end;
      

  3.   

    kye_jufei 的回答是基于数据集绑定的基础上吧?
    我也明白lichunlin1的意思o(∩_∩)o ,可是需要使用cxGrid的其他功能o(∩_∩)o 所以不能替换成其他控件