Russian Qt Forum
Сентябрь 30, 2024, 14:36 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Наследование от QTableViewPrivate  (Прочитано 11756 раз)
spectre71
Гость
« Ответ #15 : Ноябрь 27, 2009, 00:23 »

Цитировать
1) Вызываем в своем сперва QTableView::paintEvent(event);
так если я вызову родной метод он же мне прорисует всю сетку правильно? т.о. что бы мне оставить только вертикальные линии сетки перед этим придется закрашивать ту сетку которую нарисовал родитель. вообще можно и я рассматривал этот вариант но выглядит как то кривовато.

т.е. как я понимаю так:
    1 - нарисовать все родителем (в том числе и сетку)
    2 - закрасить сетку что нарисовал родитель.
    3 - нарисовать только вертикальные линии

я понял верно?

Да так.
Минут через 15 - 30 кину тебе код по первому пункту.



по поводу пункта 2 тоже очень катит.... в задаче надо использовать большое кол-во цветов для разных событий въюхи и не только.
Если этот вариант на вскидку, осмелюсь спросить нет ли другого варианта?

Огромное человеческое спасибо за первые 2 пути.

З.Ы. может наследование и переопределение обоих классов тоже не слишком красивых выход, зато получаю гибкость и полный контроль за моим классом.

На вскидку, это значит пришла идея, вроде верная, но нужно пробовать, писать тест.
Записан
spectre71
Гость
« Ответ #16 : Ноябрь 27, 2009, 00:53 »

Вот код по первому пункту.
//?Непонимающий?
Закоментированнные куски, не совсем понятно что с ними делать, но и так вроде работает Улыбающийся
Я думаю что там можно что-нибудь удалить лишнее из кода.
Записан
Jo
Гость
« Ответ #17 : Ноябрь 27, 2009, 01:08 »

Спасибо, я даже и не рассчитывал на код. Идею понял буду лабать в этом направлении.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #18 : Ноябрь 27, 2009, 13:26 »

Альтернатива:

- нарисовать все родителем БЕЗ сетки
- скопировать кусок из QTableView.cpp ::paintEvent (там где if (showGrid)) для отрисовки горизонтальных линий (там совсем немного)
Записан
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.159 секунд. Запросов: 23.