페이지

Include Lists

2017년 8월 2일 수요일

Qt Widget의 그림자 효과주기






 What
   - Qt 위젯의 그림자 효과주기






 같은 하나의 위젯의 테두리에 그림자 효과를 만들어야 하는 미션이 떨어졌다.

디자이너는 이것을 OutGlow라고 하였다.

그래서 검색을 하던 , Qt QGraphicsDropShadowEffect 라는 class에서 비슷한 기능을 제공하고 있었다.

하지만 우리의 디자인은 Qt에서 제공하는 기본 기능으로만 구현 되는것을 요구하진 않는다.

좀더  radius 퍼짐이    효과를 원했다.

그래서 검색을 하던 역시나 StackOverflow에는 나보다 먼저 고민을  사람이 있었다.
https://stackoverflow.com/questions/23718827/qt-shadow-around-window  글을 참조하여 적용해 보았다.





왼쪽은 QGraphicsDropShadowEffect  적용한 Widget이며,
오른쪽은 ShadowEffect라는 Class 통해 적용된  Widget이다.





Position Shadow Effect 위치를 나타내며, 0.0 일때, 정중앙을 기준으로 shadow 효과가 나타난다.
Length shadow 크기를 나타내며, normal effect 에는 적용이 안된다.

Radius 0일때 사각형이며, 커질 수록 곡률이 생긴다.

Binary  : https://drive.google.com/open?id=0ByvWiBJz6HrFQjZaWEdyY2lzejQ
Source : https://github.com/holograming/QtDevZone/tree/master/Src/OutGlow

댓글 없음:

댓글 쓰기