2016-07-21 3 views
0

이동 한 후 두 열을 고정하고 싶습니다.이동 후 열 고정

예 :이 후 수동으로 다시 이동하는 것이 가능 JSFiddle

var 
    myData = Handsontable.helper.createSpreadsheetData(10, 50), 
    container = document.getElementById('example1'), 
    hot; 

hot = new Handsontable(container, { 
    data: myData, 
    rowHeaders: false, 
    colHeaders: true, 
    preventOverflow: 'horizontal', 
    allowInsertRow: false, 
    allowInsertColumn: false, 
    fixedColumnsLeft: 2, 
    contextMenu: false, 
    manualColumnMove: [2, 5], 
    manualColumnFreeze: true 
}); 

하지만 ...

내가 그들을 옵션으로 이동 한 후 나는 수동 이동을 차단할 수있는 방법

?

고정 열을 고정 시키시겠습니까?

고마워)

+0

manualColumnFreeze 속성은 그입니다. 당신이 이미 그것을 사용했음을 알았습니다. – Aravind

+0

예. 첫 번째와 두 번째 열을 이미 이동할 수 있습니다. –

답변

0

마침내 열을 동결하는 방법을 찾을 수 있지만, 가이드가 항상 표시됩니다.

솔루션 : JSFiddle

var 
    myData = Handsontable.helper.createSpreadsheetData(10, 50), 
    container = document.getElementById('example1'), 
    hot, 
    fixedColumnsLeft = 2; 

hot = new Handsontable(container, { 
    data: myData, 
    rowHeaders: false, 
    colHeaders: true, 
    preventOverflow: 'horizontal', 
    allowInsertRow: false, 
    allowInsertColumn: false, 
    fixedColumnsLeft: fixedColumnsLeft, 
    contextMenu: false, 
    manualColumnMove: true, 
    manualColumnFreeze: true, 
    beforeColumnMove: setBeforeColumnMove(), 
}); 

function setBeforeColumnMove() { 
    return function(startColumn, endColumn) { 
     var manualColumnMove = hot.getPlugin("ManualColumnMove"); 

     if (startColumn < fixedColumnsLeft || endColumn < fixedColumnsLeft) { 
     manualColumnMove.changeColumnPositions(endColumn, startColumn); 
     } 
    } 
};