Это на самом деле сложная небольшая проблема, хотя бы потому, что документации 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;
}
}
}
}
И ячейки и строки индексов начинается с нуля.
Спасибо Эрик! Я попробую! – user1245146