Checkbox в таблице, редактируемый с клавиатуры

858 views
Skip to first unread message

DanilG

unread,
Nov 7, 2011, 12:07:25 PM11/7/11
to rue...@googlegroups.com
Есть стандартный пример колонки с чекбоксами, которую можно кликать мышью и она меняет состояние флага:
http://dev.sencha.com/deploy/ext-3.4.0/examples/grid/edit-grid.html
А как сделать так, чтобы нажал в этой ячейке пробел, или Enter - и поменялось значение флажка? Второй день гадаю.
До чего дошел - этот CheckColumn не ловит события от клавиатуры. Что остается - вешать событие на весь грид, типа "keypress" ради этой колонки? Как-то через  ... получается.
P.S. юзаю версию ExtJS 3.3

DanilG

unread,
Nov 21, 2011, 4:41:09 PM11/21/11
to ruextjs
Так и оставил решение - именно через "это" место. Иначе никак.

bvh

unread,
Nov 22, 2011, 2:08:05 PM11/22/11
to ruextjs
Я не проверял, но попробуйте копнуть в этом направлении
http://docs.sencha.com/ext-js/3-4/#!/api/Ext.form.Field-event-specialkey

DanilG

unread,
Dec 17, 2011, 8:05:34 AM12/17/11
to ruextjs
Пробовал, это событие навешивается на поле формы, т.е. когда уже
редактируют ячейку. На самом деле, это один из самых "корявых"
моментов юзабилити. Получается, чтобы установить флажок в ячейке
булевого типа, нужно сперва активизировать поле ячейки (минимум один
клик), активируется чекбокс. А потом еще и чекбокс установить/сбросить
(например, в Chrome это вам не удастся). Конечно, подобное никакому
юзеру не придется по душе.
Я сделал обработку нажатия клавиши на всей таблице, проблема решена.
Но вполне можно было заложить это в библиотеку, с возможностью
задавать обработчик для колонки.

On 22 ноя, 23:08, bvh <bvh....@gmail.com> wrote:
> Я не проверял, но попробуйте копнуть в этом направленииhttp://docs.sencha.com/ext-js/3-4/#!/api/Ext.form.Field-event-specialkey

Reply all
Reply to author
Forward
0 new messages