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
[49763] TChart Scroll 에 대해서 질문을 좀 드릴께요..
또아리 [sky4242] 1420 읽음    2007-06-30 14:14
TChart스크롤을 해야 하는데 포럼에서 자료를 구해서 코딩을 해보았습니다. 그런데 잘되긴 하는데..문제점이 발생하더군요...문제인즉,,, 예를들어 25개가 넘으면 스크롤을 시키겠다고 가정할 때...25가 넘으면 스크롤이 잘되긴 하는데..스크롤 되는 중간에 Series를 정지 시킨다음에 다시 타임머를 Enable시키면 ...일정시간동안 Series가 그려지지 않더라구요...이게 왜 그런지요..
아래는미흡하지만 제가 코딩한부분을 첨부 해봅니다..


맨처음 스타트 버턴을 누르면 타임머 Enable되고..25개가 넘으면 그때부터 스크롤이 잘 되는데...스크롤이 되는 과정에서....스크롤정지 버턴을 누르고 다시 스크롤 시작버턴을 누르면 맨처음 스타트 할 때와 같이 그려지는게 아니고
일정시간뒤에 Series가 보이는데...refresh()를 해도 안돼고 왜 그런가요?  스크롤 정지 버턴을 누르면
Series1을 모두 지우는데도...왜 다음 시작때 바로 보이지 않는건지 아시는분 답변좀 부탁드립니다.

void __fastcall TW_Chart::Chart_StopAndNULL() // Chart Clear
{
    for (int i = 0; i <Series1->Count(); i++) {
        Series1->Delete(i);
    }
    Series1->Clear();

    GraphRealCnt1 = 0;
    Minimum_cnt1 = 0;

}
//-------------------------------------------------------
void __fastcall TW_Chart::Int_TMTimer(TObject *Sender)  // 200ms
{
            Series1->AddXY(GraphRealCnt1, NeedGraphData((int)TrendItem_LoadData[0].ID,TrendItem_LoadData[0].ADDRESS));
               
          Series1->RefreshSeries();
         GraphRealCnt1++;  // 단순 카운터 증가

/----------------------------------------- Series 1 Scroll
    if(Series1->Count() > 25)
    {
         Minimum_cnt1++;
         Chart1->BottomAxis->Minimum = Minimum_cnt1;
         Chart1->BottomAxis->Maximum = GraphRealCnt1 -1;
         Series1->Delete(0) ;
    }

    // 스크롤이 10000 이상이면 카운터 리셋
                  if (GraphRealCnt1 > 10000) {
       GraphRealCnt1 = 0;
       Minimum_cnt1 = 0;
            for (int i = 0; i <25; i++) {
        Series1->Delete(0);
            }
    }
}
//------------------------------------------------------
void __fastcall TW_Chart::Button2Click(TObject *Sender) // 스크롤 정지
{   
        Int_TM->Enabled = false;
       Chart_StopAndNULL()
}

//------------------------------------------------------
void __fastcall TW_Chart::Button1Click(TObject *Sender) // 스크롤 시작
{   
        Int_TM->Enabled = true;
}

+ -

관련 글 리스트
49763 TChart Scroll 에 대해서 질문을 좀 드릴께요.. 또아리 1420 2007/06/30
49765     Re:TChart Scroll 에 대해서 질문을 좀 드릴께요.. 장성호 1571 2007/06/30
49766         Re:Re:TChart Scroll 에 대해서 질문을 좀 드릴께요.. 또아리 1388 2007/07/02
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.