C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[16802] Re:[질문] 창에 구멍을 내는데 궁금한것..
gongnim [gongnim] 1754 읽음    2002-03-26 13:02
1. HRGN은 어떤것인가요.
   MSDN에 나와있는 그대로입니다. 간단히 말한다면 윈도우의 GDI Handle을 말하는것입니다.

2. CombineRgn
   HRGN 핸들을 조합하는 것입니다. 그러니까 원하는 모양을 잘라냈을 때의 핸들을 말합니다.(실제로 적용은 하지 않습니다.)
  
3. SetWindowRgn
   잘라냈을때의 핸들을 윈도우에 적용시키는 것입니다.

그리고 님께서는 DeleteObject(HANDLE)의 시점을 모르시는것 같은데 폼이 사라지기 전에 한번만 해주면 됩니다. DeleteObject라는 것은 SetWindowRgn으로 윈도우를 사용자가 만든 윈도우를 해제한다는 의미로 받아들이면 되겠습니다.

그럼....

         --- Change World ---


김진수 님이 쓰신 글 :
:     HRGN   WindowRgn, HoleRgn ;
:     WindowRgn = 0;
:     GetWindowRgn(Handle, WindowRgn);
:     DeleteObject(WindowRgn);
:     WindowRgn = CreateRectRgn(0,0,Width, Height);
:     HoleRgn = CreateRectRgn(20,50,Width-20,Height-70);
:     CombineRgn(WindowRgn, WindowRgn, HoleRgn, RGN_DIFF);
:     SetWindowRgn(Handle, WindowRgn, TRUE);
:     DeleteObject(HoleRgn);
:
:
: //    DeleteObject(WindowRgn);   ?
:
:
: 1. HRGN은 어떤것인가요. msdn에서 가서 찾아 봣더니
:   CRgn::operator HRGN
: use this operatro to get the attached windows GDI handle of the CRgn object.
: this operator is a casting operator,which supports direct use of a HRGN object.
:
: 선언자같은데 아닌가여 HRGN은 어떤 정보를 갖는지?
:
: 2. CombineRgn이 창의 틀을만드는 즉, 투명부분을 만드는 것인듯하거든요. 근데 화면에
:    표시되는 것은 SetWindowRgn 때문인가여? CombineRgn 만으로는 창의 정보만 만드는것인지?
:
: 3. SetWindowRgn 에 이런 말이 있는데
:
: In particular, do not delete this region handle. The System deletes the region handle when
: it no longer needed.
:
: 자동 삭제라는 말은 알겟는데 창에 구멍을 내놓고 창의 크기를 변경시키면 구멍이 사라지거든요
: 그래서 resize event 에도 넣어 낳는데 그럼 object가 마구 생성되는게 아닌지... 그래서
: delete 해줘야 하는건아닌지....
:
: 둘다 해봣는데 별 이상한 차이점을 못느끼겟어여
:
: 허접한 질문 읽어 주셔서 감사^^ 좋은 하루되세요

+ -

관련 글 리스트
16788 [질문] 창에 구멍을 내는데 궁금한것.. 김진수 1128 2002/03/26
16802     Re:[질문] 창에 구멍을 내는데 궁금한것.. gongnim 1754 2002/03/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.