Название: Пара вопросов по делегатам Отправлено: Jokerochek от Июль 22, 2009, 12:14 1) Можно ли задавать конкретного делегата не только отдельной строке и колонке, но и отдельной ячейке?
2) Столкнулся с проблемой - при назначении собственного делегата не вызываются сигналы itemActivated, при изменении значения в модели. Можно ли связать этот сигнал с сигналом делегата commitData или closeEditor? Название: Re: Пара вопросов по делегатам Отправлено: spectre71 от Июль 22, 2009, 13:11 1) Можно ли задавать конкретного делегата не только отдельной строке и колонке, но и отдельной ячейке? В делегате можно по разному обрабатывать индексы, в том числе и поставлять разные редакторы для разных строк, колонок или конкретных индексов. Название: Re: Пара вопросов по делегатам Отправлено: denka от Июль 22, 2009, 13:24 По 1 нет нельзя
По 2 если имееться ввиду сигнал от группы классов Q*Widget то он и не должен испускаться при изменении данных Название: Re: Пара вопросов по делегатам Отправлено: spectre71 от Июль 22, 2009, 15:00 Название: Re: Пара вопросов по делегатам Отправлено: Jokerochek от Июль 22, 2009, 17:50 Спасибо за ответы.
Spectre, я понял, что вы имели в виду. У этого способа есть один сильный недостаток - делегат, скорее всего, будет завязан на данной конкретной модели. Хотя это тоже можно обойти, если создать делегат, который будет являться прослойкой: -повесить его через setItemDelegate, а внутри него определить какие делегаты будут вызываться, в зависимости от индекса текущего элемента. Название: Re: Пара вопросов по делегатам Отправлено: denka от Июль 22, 2009, 22:22 Я отвечал конкретно на конкретный вопрос. Ответ - нельзя. Читай что спрашивалось в начале топика: 1) Можно ли задавать конкретного делегата не только отдельной строке и колонке, но и отдельной ячейке? Для вью можно задать один делегат для всех итемов или же для конкретной строки или столбца. Для конкретного итема нельзя. А то что ты описал: В делегате можно по разному обрабатывать индексы, в том числе и поставлять разные редакторы для разных строк, колонок или конкретных индексов. Является основной концепцией делегатов - возврата нужного эдитора для нужного элемента.З.ы. если я не прав прошу привести код где для 3-4 конкретных элементов QTableView будут установлены разные делегаты |