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
[16337] [참고]:챠트에 대한 질문입니다..챠트를 동적으로 생성 시켰는데염..문제는 ...
^^ [] 1253 읽음    2002-03-14 13:55
제가 직접적으로 처리해 본 것이 아니어서 정혹하다고 말씀드리기가 힘들지만,
이렇게 해 보세요.
delete comps;

클래스이기때문에 기본적으로 자신이 메모리에서 해제될 때, ~TBarSeries ()라는 소멸자를 호출하여 주변정리를 하고 소멸(해제)될 것입니다.
그리고, 혹시, 이렇게 해서 완전히 소멸되지 않을 수 있습니다. 동적으로 생성한 후, 그 내부에 또다시 동적으로 생성해 준 것이 있는 경우에는 이것부터 해제를 하고 delete해 주어야 합니다. 여기서 보면 Add하는 부분이 있는데, 이와 매치되는 delete하는 함수가 존재하지 싶습니다. 이 함수로 먼저 delete한 후에 TBarSeries를 해제하면 되지 싶습니다.
"참고"하세요.



시후 님이 쓰신 글 :
: 임의 폼에서 챠트를 동적으로 생성시켰습니다..
: 그런데 폼을 종료하고 나가면서 챠트를 해제 시켜야 하는데...방법을 몰겠네염..
: 책을 봐도 생성부분은 나와있는데..해제는 없네여..
: 예를 들면 이런겁니다..
: 임의 폼에 버튼이 있고 버튼을 누르면 스트링 그리드에 있는 값을 읽어 들여서 챠트를 동적으로
생성시켜서 스트링 그리드 값을 디스플레이 시켜주져..
: 근데 버튼을 한번더 누르면 시리즈가 추가되어 챠트를 또 다시 생성시키더군여..
: 버튼을 누르면 챠트를 해제했다가 다시 불러 들여야 하는데...거참 몰겠습니다..
: 아래와 같이 했거든요..바챠트인데 항목이 추가 될때마다 다른색의 바를 만들었습니다..
:
:
: BYTE nRed = GetRValue(Color);
: BYTE nBlue = GetBValue(Color);
: BYTE nGreen = GetGValue(Color);
:
:         TBarSeries *comps = new TBarSeries(this); // 챠트 생성
:
:         for(int cnt = 0 ; cnt < SG1->RowCount ; cnt++) // 스트링 그리드의 로우 카운트
:         {
:                 nRed += 10*cnt;
:                 nBlue -= 10*cnt;
:                 nGreen *= 1.15*cnt;
:
:                 Color = (TColor)RGB(nRed,nGreen,nBlue); // 칼라 동적 생성
:                 Canvas->Brush->Color = Color;
:
:                 comps->ParentChart = Chart1;
:                 comps->Add(atoi(SG1->Cells[2][cnt].c_str()),SG1->Cells[1][cnt],Color);
:         }
:        
:         Form1->Color = clBtnFace; // 요건 폼의 칼라 속성도 영향을 받길래 강제로 돌려놓은것임

+ -

관련 글 리스트
16314 챠트에 대한 질문입니다..챠트를 동적으로 생성 시켰는데염..문제는 ... 시후 1088 2002/03/14
16337     [참고]:챠트에 대한 질문입니다..챠트를 동적으로 생성 시켰는데염..문제는 ... ^^ 1253 2002/03/14
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.