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
[61975] TImage의 Canvas에 직접 그린 내용이 컴터마다 다릅니다..
이즈 [lovease] 1115 읽음    2010-07-23 10:52
안녕하세요..

요즘 뭔가를 하나 만들고 있는데요 생전 처음보는 문제가 발생해서 이렇게 문의를 드립니다.

TImage의 Canvas에 직접 그린 내용이 같은 프로그램임에도 다른 컴터에서 다르게 나타나는 증상입니다..

첨부된 파일의 앞에부분이 이상없는 개발컴이구요.. 뒷부분이 다른컴 입니다..

사양을 놓고 보자면..

개발컴 : 코어2 듀오, 4G RAM, XP SP3
             코어2 듀오, 2G RAM, XP SP3

다른컴 : 코어2쿼드, 1G RAM, XP SP3

램때문인가 싶어서 살펴봐도 프로그램이 사용하는 메모리는 정말 얼마 안됩니다..
GDI객체 사용량이 많아서 그런가 싶어 리소스를 살펴봐도 60개도 안쓰고 있구요..

코드는 간단합니다.

void __fastcall TFrameCompare::DrawGaugeY(TCanvas *C, int nClientX, int nClientY)
{
    int nX, nY;
    double dbRatioY = nClientY/m_nYCnt;
    C->Lock();

    TColor oldColor = C->Pen->Color;
    C->Pen->Color = TColor(CLR_RED);

    for(nY=0; nY < m_nYCnt; nY++)
    {
        C->MoveTo(nClientX, nY*dbRatioY);

        if(nY%GAUGE_Y_LONG_EVERY)
        {
            C->LineTo(nClientX-GAUGE_Y_SIZE_SHORT, nY*dbRatioY);
        }
        else
        {
            C->LineTo(nClientX-GAUGE_Y_SIZE_LONG, nY*dbRatioY);
            C->TextOut(nClientX - GAUGE_Y_SIZE_LONG - C->TextWidth(AnsiString(nY)), nY*dbRatioY, AnsiString(nY));
        }
    }

    C->Pen->Color = oldColor;
    C->Unlock();
}
혹시 이런문제 겪어보신분 계신가요?

+ -

관련 글 리스트
61975 TImage의 Canvas에 직접 그린 내용이 컴터마다 다릅니다.. 이즈 1115 2010/07/23
61984     자답(?) 이즈 908 2010/07/23
61987         Re:자답(?) 박지훈.임프 894 2010/07/24
61994             Re:Re:자답(?) 이즈 801 2010/07/26
62008                 Re:Re:Re:자답(?) Nibble 829 2010/07/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.