Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: Sahab от Ноябрь 26, 2014, 21:37



Название: [Решено] QGraphicsItem, эффект выделения.
Отправлено: Sahab от Ноябрь 26, 2014, 21:37
Есть элменты на вьюхе, которые должны иметь эффект выделения - пиксель-два опреленного цвета окантовывающие форму итема (на скрине видно).
Проблема в том что, итемы может иметь произвользную форму (svg).
Есть идеи каким образом это реализовать?

имеется вариант смахивающий на анальное вторжение, хотелось бы услышать мнение сторонних разрабов.


Название: Re: QGraphicsItem, эффект выделения.
Отправлено: GreatSnake от Ноябрь 27, 2014, 08:58
Добавь айтему QGraphicsDropShadowEffect.


Название: Re: QGraphicsItem, эффект выделения.
Отправлено: Sahab от Ноябрь 27, 2014, 13:09
Это будет сдвинутая тень, мне же нужно чтобы кант был по всей форме.


Название: Re: QGraphicsItem, эффект выделения.
Отправлено: GreatSnake от Ноябрь 27, 2014, 13:16
Это будет сдвинутая тень
Ну да, если не сбросишь QGraphicsDropShadowEffect::offset.


Название: Re: QGraphicsItem, эффект выделения.
Отправлено: Sahab от Ноябрь 27, 2014, 13:36
Если оффсет будет 0, ее не видно будет, какой толк тогда с нее?


Название: Re: QGraphicsItem, эффект выделения.
Отправлено: GreatSnake от Ноябрь 27, 2014, 13:41
Мде... что-то совсем ленивый народ пошел :(
Почему бы не увеличить blurRadius, коли он по дефолту 1 ???


Название: Re: QGraphicsItem, эффект выделения.
Отправлено: Sahab от Ноябрь 27, 2014, 13:45
Перед тем как писать необоснованные тирады, может сначала сами попробуете, то что написали?
Я, например, так и сделал... в обоих смыслах


Название: Re: QGraphicsItem, эффект выделения.
Отправлено: GreatSnake от Ноябрь 27, 2014, 13:55
Перед тем как писать необоснованные тирады, может сначала сами попробуете, то что написали?
Не пробовал бы - не советовал бы.
Код
C++ (Qt)
GraphicsItem::setBorder()
{
QGraphicsDropShadowEffect* border = new QGraphicsDropShadowEffect( scene() );
border->setColor( QColor( 0, 0, 0, 255 ) );
border->setOffset( QPointF( 0, 0 ) );
setGraphicsEffect( border );
border->setBlurRadius( 8 );
}


Название: Re: QGraphicsItem, эффект выделения.
Отправлено: Sahab от Ноябрь 27, 2014, 14:03
При выбранном мною цвете видно стало после блюра > 18-20.
Я же пробовал 5-6, поэтому и не заметил.
Благодарю на ответ.