Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Выделение QGraphicsItem.
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Система рисования. Печать
Litkevich Yuriy
Пытаюсь разобраться как реализовать собственный стиль (вид) выделения графического элемента.
Мой элемент ни в какую не подсвечивается, даже стандартным прямоугольником.

Может кто-то уже реализовывал своё выделение?
ufna
а как ты его подсвечиваешь?

он по умолчанию клиппит все кроме себя, если рисовать в нем

я просто в пеинт евенте рисовал, отключая клип.
Litkevich Yuriy
разобрался, надо просто в функции рисования проверять, состояние элемента - ВЫДЕЛЕН/НЕВЫДЕЛЕН, и рисовать выделение если выделен:
    virtual void paint(QPainter* ppainter, const QStyleOptionGraphicsItem*, QWidget*)
    {
        const int offset = 3;
        
        ppainter->save();
        ppainter->setPen(QPen(Qt::blue, nPenWidth));
        ppainter->drawEllipse(-10, -10, 20, 20);
        if (isSelected()) {
            ppainter->setPen(QPen(Qt::black, 1, Qt::DashLine));
            ppainter->drawEllipse(-(10+offset), -(10+offset), 20+offset*2, 20+offset*2);
        }
        ppainter->restore();
    }
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.