|
어떤 과정을 거치든 보여주려면 결국 Parent(TWinControl*)를 지정해주어야 합니다.
보여주기 위한 것이 아니라면 투명이 필요 없는 것일테구요.
그리고, 투명 효과가 발생하는 것은 생성 시가 아니라 그려질 때입니다.
TShape의 Brush와 Pen 속성을 조절하면 배경이 보입니다.
이것들만 조절해주면 나머지는 TShape가 알아서 처리해줍니다.
도형의 내부를 채우지 않고 외곽선만 그리려면 Brush의 Style을 bsClear로 하면 됩니다.
이렇게 하면 Pen의 모드와는 상관 없이 배경이 보이죠.
이런 경우 Pen의 Mode를 pmCopy로 하는 게 도형을 확실히 보여주니까 낫겠죠.
제가 동문서답했는지도 모르겠군요.
서비 님이 쓰신 글 :
: TGraphicControl에 상속된 TShape의 Pen Mode를 pmMaskNotPen 다음과 같이 바꿔주면,
:
: Parent의 Graphic을 투평하게 즉, Parent에 Shape를 입힌것 처럼 보이게 되잖아요.
:
: 그래서 좋아라 하고 열씸히 Tracker 클래스를 만들었죠..
:
: 만들었는데.. 문제는 TGraphicControl에 상속되었기 때문에
:
: Parent에서 그려주지 못하면 그 역할은 끝이 난거죠..
:
: 이 사실을 뒤늦게야 검색해보고 알았답니다.
:
: 테스트 할때야 그냥 TShape를 Parent에 놓고 작업했지만
:
: 실제로는 Parent가 없고 그냥 생성이 되버리기 때문에..
:
: TShape의 PenMode를 적용해 Background의 그래픽에 AlphaBlending처럼 TShape를 입혀야 하는데 방법이 없을까요.
:
: 아니면 Handle을 가지는 TShape와 비슷한 기능을 하는 컴포넌트는 없을까요.
:
: 안되면 처음부터 다시 해야 합니다. ㅠ.ㅠ 좌절에 순간..
|