Здравствуйте, гость ( Вход | Регистрация )
Litkevich Yuriy | Дата 26.5.2010, 16:09 |
а что это за класс такой QStandardItemDelegate? да, это мне в голову втемяшилось, что это первый наследник абстрактного. Всё-таки он называется - QItemDelegate |
|
AntonH851 | Дата 26.5.2010, 15:47 |
а стандартный работает нормально. посмотри код QStandardItemDelegat, может имеет смысл унаследоваться от негоа что это за класс такой QStandardItemDelegate? у меня в Qt такого нет |
|
Litkevich Yuriy | Дата 26.5.2010, 15:19 |
а стандартный работает нормально. посмотри код QStandardItemDelegat, может имеет смысл унаследоваться от него |
|
AntonH851 | Дата 26.5.2010, 15:05 |
Значит в делегате ошибся. посмотри на параметр, который ты задавал и который идёт по умолчаниюмда, придется отказаться от этой затеи... почему-то и другие делегаты(написанные мною) с этой моделью не хотят дружить... а стандартный работает нормально. вот код делегата:
|
|
Litkevich Yuriy | Дата 26.5.2010, 12:46 |
Значит в делегате ошибся. посмотри на параметр, который ты задавал и который идёт по умолчанию |
|
AntonH851 | Дата 26.5.2010, 12:43 |
Да, сделал делегат, и вроде все написал как обычно. А если установить QItemDelegate то все работает нормально. Значит в делегате ошибся. Спасибо! |
|
Litkevich Yuriy | Дата 26.5.2010, 12:23 |
Может быть это связано с тем, что модель унаследована от QAbstractTableModel и я что-то там не дописал...? нет это связано с делегатом. Это он сигналит, что редактирование завершено и нужно сделать то то.void QAbstractItemDelegate::closeEditor ( QWidget * editor, QAbstractItemDelegate::EndEditHint hint = NoHint ) [signal] попробуй установить QStandardItemDelegat, для представления Пробовал посылать сигнал closeEditor с параметром QAbstractItemDelegate::EditPreviousItem делал своего делегата? |
|
AntonH851 | Дата 26.5.2010, 11:46 |
Добрый день! Подскажите пожалуйста, как решить такую проблему: После того как ячейка отредактирована, редактор закрывается и фокус передается на следующую ячейку, находящуюся справа. А мне нужно чтобы фокус оставался на той же ячейке которая редактировалась... Обычно я для этого в делегате пишу такую строку(в методе setModelData):
Но сейчас она не помогает. Может быть это связано с тем, что модель унаследована от QAbstractTableModel и я что-то там не дописал...? Пробовал посылать сигнал closeEditor с параметром QAbstractItemDelegate::EditPreviousItem, но тогда вообще что-то непонятное происходит, фокус-то на месте остается, но делегат не закрывает редактор(или закрывает и тут же открывает). и пробовал обрабатывать сигнал dataChanged модели, тоже не помогает. Я устанавливаю нужный мне индекс, а потом почему то все время текущий индекс смещается вправо на одни столбец... а где это выключить непонятно... Как еще такое поведение можно изменить уже не знаю... |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 29.3.2024, 12:06 |