Это на самом деле небольшая проблема, хотя бы потому, что у Sencha нет документации.
CheckboxModel действительно имеет событие beforeselect
, унаследованное от Ext.selection.RowModel
. Однако нет простого способа получить индекс столбца, потому что, честно говоря, в этом и заключается суть RowModel.
Однако в Ext.view.Table
есть недокументированное событие (которое унаследует ваша сетка), которое называется beforecellmousedown
. Вот параметры мероприятия:
- просмотр: вид вашей сетки
- ячейка: ячейка, на которую нажали
- cellIndex: индекс ячейки
- запись: запись магазина, связанная с ячейкой
- строка: строка ячейки
- rowIndex: индекс строки
- eOpts: стандартное событие опция события
Так что вы, вероятно, попробуете что-то вроде этого:
viewConfig: {
listeners: {
beforecellmousedown: function(view, cell, cellIdx, record, row, rowIdx, eOpts){
if(cellIdx === indexOfLastColumnInGrid){
return false;
}
}
}
}
И индексы ячеек и строк начинаются с нуля.