QTableView: как сделать переход между редактируемыми ячейками одним кликом мышки? (не Triggers) |
Здравствуйте, гость ( Вход | Регистрация )
QTableView: как сделать переход между редактируемыми ячейками одним кликом мышки? (не Triggers) |
sindbad07 |
28.4.2010, 19:28
Сообщение
#1
|
Студент Группа: Участник Сообщений: 21 Регистрация: 28.4.2010 Пользователь №: 1671 Спасибо сказали: 0 раз(а) Репутация: 0 |
Допустим ячейка определенной строки находится в режиме редактирования, как сделать чтобы кликнув другую ячейку (в той же строке) редактирование перешло к ней?
EditTriggers не подходит потому что он тупо приступает к редактированию любой ячейки по одному клику мышки, даже если до этого ничего не редактировалось. Фишка также в том, что мне надобно, если именно мышкой перешли к редактированию новой ячейки, то реакция делегата должна быть иная нежели перешли клавой (Tab) П.С. Понимаю, что вопрос не тривиальный, потому как сам смотрел исходники классов QAbstractItemView и QItemDelegate, может кто-нибудь уже реализовывал подобную кастомизацию QTableView или даст совет хороший. |
|
|
sindbad07 |
28.4.2010, 20:08
Сообщение
#2
|
Студент Группа: Участник Сообщений: 21 Регистрация: 28.4.2010 Пользователь №: 1671 Спасибо сказали: 0 раз(а) Репутация: 0 |
А вто такой еще вопросик:
Есть два виджета, один из них подчинен другому (в данном случая QTableView и editor для ячейки), почему событие FocusOut приходит editor'у раньше, чем mousePressEvent приходит в QTableView? Как-то это не логично. Была у меня неплохая задумка ловить в QTableView mousePressEvent, проверять state()==editing и далее Edit() новой ячейки, но грабли подстерегают нас по всюду - eventFilter делегата (editor'а) отправляет сигнал CloseEditor раньше чем я поймаю мышку (FocusOut виноват). Кстати для клавы такой прием работает. |
|
|
sindbad07 |
30.4.2010, 14:21
Сообщение
#3
|
Студент Группа: Участник Сообщений: 21 Регистрация: 28.4.2010 Пользователь №: 1671 Спасибо сказали: 0 раз(а) Репутация: 0 |
Всем спасибо за внимание, проблема решена.
|
|
|
Текстовая версия | Сейчас: 27.12.2024, 23:25 |