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
[51468] 폼의 일부를 투명하게...
권기식.with☆ [orion96] 1167 읽음    2007-12-04 19:20
안녕하세요?

폼의 일부분을 마우스로 드래그해서 투명하게 만들려고 합니다.
어두운 밤에 모니터의 불빛이 밝아서 최소한의 화면만 보게 하는 프로그램인데요...

Form에 Transparent Color(clRed)를 지정하고 Ctrl 버튼을 누르고 마우스를 드래그하면 해당 영역의 Canvas을 붉은색 사각형으로 그려주었습니다.

일단 원하는대로는 잘 되는데요...
문제는 ESC를 눌러 폼을 최소화했다가 다시 최대화할 때 그려진 사각형들이 지워진다는 것입니다.
폼이 뒤로 갔다가 앞으로 올 때는 괜찮은데 말이죠.

TImage에 그려보니 Repaint가 잘 되는 것 같은데... 깔끔하지 않은 것 같습니다 ^^;

TRect를 배열이나 동적할당하여 기억하였다가 Repaint시 다시 그려주는 방법도 생각해봤습니다.

문제는 왜 가려졌다가 나타나면 정상적으로 보이는데 최소화되었다가 커지면(리사이즈) 다 지워지냐는 것입니다.

도움 부탁드립니다~ ^^

실행파일과 소스를 첨부합니다.

+ -

관련 글 리스트
51468 폼의 일부를 투명하게... 권기식.with☆ 1167 2007/12/04
51471     Re:폼의 일부를 투명하게... 장성호 1446 2007/12/04
51481         감사합니다. 권기식.with☆ 1071 2007/12/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.