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
[64545] TCanvas 관련 질문 입니다. 답변 부탁드립니다..
김현우 [gutgusdn] 1274 읽음    2011-06-09 11:27
안녕하세요.
TCanvas 관련해서 질문 드립니다
제가 아래 와 같이 버튼(정사각형)으로 정사각형을 Panel1 에 만들었는데요..
만든 정사각형외각을 드래그해서 모양도 바꾸는 것까지는 했습니다.

그런데 다른 버튼(다각형)을 하나 새로 만들어서 Panel1에 또 다른 도형을 추가 하려고 합니다.

그러면 Panel1 에 정사각형과 또다른 도형이 그려지는데요..
저는 그 두개의 도형이 서로다른 Canvas로 개별적으로 지우거나 모양을 변형 시키고 싶은데요..
제가 (TCanvas *Canvas = new TCanvas;)  TCanvas를 할당 하였는데
그 그림을 지우려고 하면 하면 두개 도형이 같이 없어지잖아요...
개별적으로 그려지거나 지우거나 할수 없나요
Panel1 안에 서로 다른 여러 Canvas를 그려지게 하고 싶습니다.
배열처럼 여러개로 할 수 는 없는지 방법을 찾고 있는데 .. 아직 못찾고 있습니다. ㅠㅠ
질문의 요지를 최대한 정리하려고 했는데요 이해가 되시는분 부탁드립니다. ㅠㅠ.;;

void __fastcall TForm1::RECClick(TObject *Sender)
{      
        TCanvas *Canvas = new TCanvas;
        HDC hdc;
        hdc = NULL;

        hdc = GetDC(Panel1->Handle);
        Canvas -> Handle = hdc;         
        Canvas -> Pen -> Width = 1;
        Canvas -> Pen -> Color = clRed;
        Canvas -> Pen -> Style = psSolid;
        Canvas -> Brush -> Style = bsClear;

        Canvas -> Rectangle(X1,Y1,X2,Y2);
        ReleaseDC(Handle,hdc);
        delete Canvas;
        GetRec = true;
}
void __fastcall TForm1::POLYClick(TObject *Sender)
{
        TCanvas *Canvas = new TCanvas;
        //TCanvas canvas[5];
        HDC hdc;
        hdc = NULL;

        hdc = GetDC(Panel1->Handle);
        Canvas -> Handle = hdc;             Canvas -> Pen -> Width = 1;
        Canvas -> Pen -> Color = clGreen;
        Canvas -> Pen -> Style = psSolid;
        Canvas -> Brush -> Style = bsClear;

        TPoint points[9];
        points[0] = Point(px0,py0);
        points[1] = Point(px1,py1);
        points[2] = Point(px2,py2);
        points[3] = Point(px3,py3);
        points[4] = Point(px4,py4);
        points[5] = Point(px5,py5);
        points[6] = Point(px6,py6);
        points[7] = Point(px7,py7);
        points[8] = Point(px8,py8);

        pCanvas->Polygon(points,PolySize);
        ReleaseDC(Handle,hdc);//
        delete Canvas;
        GetPoly = true;
}

+ -

관련 글 리스트
64545 TCanvas 관련 질문 입니다. 답변 부탁드립니다.. 김현우 1274 2011/06/09
64547     Re:TCanvas 관련 질문 입니다. 답변 부탁드립니다.. 송신영 1783 2011/06/09
64550         Re:Re:답변감사합니다 ~~~!! 김현우 1312 2011/06/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.