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
[43157] Re:사각형 그리는데 이상해서요!
정재훈 [] 1096 읽음    2006-01-02 14:02
유지만 님이 쓰신 글 :
: 이미지에 사각형을 그리는데 사각형을 그리긴 그렷는데 하얀색으로 채워 져서 나오네...
: 선만 나타내고 싶은데 방법이  없나요?
: 그리고  마우스를 다시 누르면 지워 주고 싶은데 계속 남아있네요
:
: 질문을 요약 하자면
: 1. 사각형을 그렸는데 안에 채워져 있는 색을 없애고 싶습니다
: 2. 사각형을 만든후....다시 마우스 버튼 누르면.. 전에 있던 사각형을 지우고 싶습니다
: 3. 사각형을 지우는데 뒤에 이미지 불러온건 지우지 말고 그 사각형만 지우고 싶습니다.
:
: 답변 주세요!!^^;ㅡ.ㅡ.;

간략하게 답변을 올려보도록 하겠습니다.
이미지에 무언가를 그린다는 것은 이미지의 Canvas의 Draw루틴을 사용합니다.
유지만 님께서 사각형을 그리신다면 문제가 되는것은 Canvas의 멤버인 Pen과 Brush입니다.
선에 관련된 속성은 Pen의 속성에서
면에 관련된 속성은 (비워진 형태, 채워진 형태-어떻게 채워지는가 하는) Brush에서 결정됩니다.
이제 질문을 하나씩 볼까요?
1. 속이 빈 사각형을 그리고 싶다면...
Bitmap->Canvas->Brush->Style = bsClear;   // 관련된 선택옵션은 Style에 커서를 위치시키고 F1으로 도움말
2. 사각형을 그린후 (배경 손상없이) 다시 지우고 싶다면
이 때 사용되는 것은 Pen->Mode입니다. 역시 F1을 활용하시길 바랍니다.
Canvas->Pen->Mode = pmXor;
// pmXor로 선을 그린 후 동일한 위치와 크기, 색상으로 다시 그리면 XOR연산으로 그리게 되므로 원래의 모습(?)으로 돌아옵니다.

이상의 내용은 간략하게 방법에 대한 힌트 정도일 뿐이고요, 실제로 더 많은 처리가 필요하게됩니다.
도형을 그린후에 그려진 대상을 기억하는 것과, 형태와 크기, 색상등등.. *^^*

더 상세한 내용은 참고서적을 탐독해 보시면서 직접 해보시는게 최상입니다.
그럼... 즐프~ 하세요.
새해 복많이 받으시길 바랍니다.^^

+ -

관련 글 리스트
43100 사각형 그리는데 이상해서요! 유지만 1030 2005/12/28
43157     Re:사각형 그리는데 이상해서요! 정재훈 1096 2006/01/02
43161         Re:Re:사각형 그리는데 이상해서요! rjm 1006 2006/01/02
43104     Re:사각형 그리는데 이상해서요! smleelms 876 2005/12/28
43107         Re:Re:감사합니다.질문하나만더요..ㅡ.ㅡ 아까그놈 818 2005/12/28
43108             Re:Re:Re:감사합니다.질문하나만더요..ㅡ.ㅡ smleelms 854 2005/12/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.