Название: Активный делегат без openPersistentEditor и груды перерисовки Отправлено: Barmaglodd от Декабрь 19, 2011, 12:21 Хочу "странного" ;)
Нужен делегат для таблички, на котором расположены несколько виджетов (кнопочки там всякие, чекбоксы), и хочется, чтобы это всё было постоянно активным, т.е. чтобы не жамкать 2 раза мышкой для перехода в режим редактирования. Пока использую в разных ситуациях 2 варианта (костыля): 1. Рисуем и обрабатываем все события от клавы и мыши в наследнике QItemDelegate. Минус решения в большом количестве кода, да и всю анимацию контролов воспроизводить лень. 2. Вызываем на каждый чих openPersistentEditor. Как-то "неэлегантно" получается, и на больших таблицах можно море памяти скушать. Может кто-то предложит вариант без недостатков? :) Название: Re: Активный делегат без openPersistentEditor и груды перерисовки Отправлено: GreatSnake от Декабрь 19, 2011, 12:26 1. Рисуем и обрабатываем все события от клавы и мыши в наследнике QItemDelegate. Забудь про QItemDelegate. Используй вместо него QStyledItemDelegate.Это Код пробовал? Название: Re: Активный делегат без openPersistentEditor и груды перерисовки Отправлено: Barmaglodd от Декабрь 19, 2011, 12:29 И как это решит мою проблему?
Название: Re: Активный делегат без openPersistentEditor и груды перерисовки Отправлено: GreatSnake от Декабрь 19, 2011, 12:30 И как это решит мою проблему? Это решит другие проблемы, если остановишься на п.1.Название: Re: Активный делегат без openPersistentEditor и груды перерисовки Отправлено: Barmaglodd от Декабрь 19, 2011, 12:38 Это Ага, жамкаем мышкой, ячейка получает фокус, делегат появляется ;)Код пробовал? Название: Re: Активный делегат без openPersistentEditor и груды перерисовки Отправлено: Barmaglodd от Декабрь 19, 2011, 12:40 Это решит другие проблемы, если остановишься на п.1. Т.е. у меня магическим образом буду работать hover-эффекты для кнопок? Без ручной пляски с событиями от мыши? |