拖曳的代码没问题,new Ext.FormPanel要加上一个配置项:
floating:true,主要才能浮动!
试一下!

解决方案 »

  1.   

    还要加上初始坐标,下面是例子,供参考:
    // 定义一个表格面板
    var grid = new Ext.grid.GridPanel({
    title : '学员信息管理',// 标题
    renderTo : 'myGrid',// 显示表格的地方
    sm : sm,// 复选框
    cm : cm,// 列模型
    ds : ds,// 数据源
    frame : true,// 显示天蓝色圆角框
    autoHeight : true,// 自动设置高度,这个配置很重要
    width : 700,
    x : 1,// 设置初始位置横坐标
    y : 1,// 设置初始位置纵坐标
    enableDragDrop:true,
    collapsible : true, // 面板可以折叠
    //titleCollapse : true,// 单击表头任何地方都可以折叠
    floating : true,// 设置浮动,能否拖动成功就靠它了
    draggable : {
    insertProxy : false,
    onDrag : function(e) {
    var pel = this.proxy.getEl();
    this.x = pel.getLeft(true);
    this.y = pel.getTop(true); var s = this.panel.getEl().shadow;
    if (s) {
    s.realign(this.x, this.y, pel.getWidth(),
    pel.getHeight());
    }
    },
    endDrag : function(e) {
    this.panel.setPosition(this.x, this.y);
    }
    },
    // UI视图配置
    viewConfig : {
    forceFit : true
    // 强制适应分布宽度
    },
    // 表格顶部动作或按钮工具栏
    tbar : new Ext.Toolbar({
    items : [{
    id : 'btnAdd',
    text : "添加",
    handler : function() {
    Ext.MessageBox.alert("添加",
    "这里处理添加数据的逻辑!");
    }
    }, new Ext.Toolbar.SplitButton({}), {
    id : 'btnEdit',
    text : "编辑",
    handler : function() {
    Ext.MessageBox.alert("编辑",
    "这里处理编辑数据的逻辑!");
    }
    }, '-', {
    id : 'btnDel',
    text : "删除",
    handler : function() {
    Ext.MessageBox.alert("删除",
    "这里处理删除数据的逻辑!");
    }
    }]
    }), // 表格底部分页工具栏
    bbar : new Ext.PagingToolbar({
    pageSize : 10,
    store : ds,
    displayInfo : true,
    displayMsg : '显示第 {0} 条到 {1} 条记录,一共 {2} 条',
    emptyMsg : "没有记录"
    }) });
      

  2.   

    floating: true,//true有这项吗
      

  3.   

    var pel = this.proxy.getEl(); 
    不能解释一下这个是什么意思吗?