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
[59572] Re:TCustomControl 질문드립니다
Nibble [gameover] 1179 읽음    2009-12-30 15:33
CustomControl 의 내부가 그려지는 함수에서
ScrollBar의 영역을 감지해, 그 부분은 그리지 않도록 수정해 보세요.
같은 영역을 두 번 그리게 되면 깜박임 생기죠.
DoubleBuffered 를 true로 놓는 방법도 있지만,
메모리를 많이 사용하게 되고, 응답속도가 느려지는 단점이 있기 때문에
원천적으로 같은 영역을 덮어 그리는 작업을 최소화 해 주는게 가장 좋습니다.
임시로 가장 쉽게 접근할 수 있는 방법은 Drawing 처리 안에서 해당 CustomControl 의 Child Control들을
모두 Repaint() 해버리는 방법도 있긴합니다.

강대민 님이 쓰신 글 :
: ** 일반적인 TForm   스크롤바가 깜빡거리지않음
: void __fastcall TForm7::Button1Click(TObject *Sender)
: {
:     TScrollBar *ScrollBar=new TScrollBar(this);
:     ScrollBar->Parent=this;
:
:     ScrollBar->Top=0;
:     ScrollBar->Left=0;
:     ScrollBar->Width=100;
:     ScrollBar->Height=10;
: }
:
:
: ** TCustomControl 스크롤바가 깜빡거림
: __fastcall TCustomControl1::TCustomControl1(TComponent* Owner)
:     : TCustomControl(Owner)
: {
:     ScrollBar=new TScrollBar(this);
:     ScrollBar->Parent=this;
:
:     ScrollBar->Top=0;
:     ScrollBar->Left=0;
:     ScrollBar->Width=10;
:     ScrollBar->Height=100;
:
:     ScrollBar->Visible=true;
: }
:
: 커스텀 컨트롤을 만들들고 싶어서  컴포넌트의 new vcl compoent 메뉴에서
:
: TCustomControl 를 슈퍼클레스로해서  프로젝트를 생성했습니다
:
: 그리고 스크롤바가 필요해서 위의 소스처럼 생성장에서 new 시켜서 만들어줫습니다
:
: 스크롤바가 잘생성되고 작동도 잘되지만
:
: TCustomControl 의Invalidate 함수를 호출해서 다시그릴려면  new 만든 컨트롤까지
:
: 다시그리는지 배경색이나왔다 껌뻑거리내요.. 제가 만든프로그램이
:
: Invalidate 를 많이 호출하는대.. 덕분인지  위의 컨트롤이 껌뻑거리다 못해 어떨땐느 표시가 안나오기도하는대
:
: 어떤식으로 해결해야 할지 모르겠습니다
:
: 일반적인 TForm 도 그런지 Invalidate 함수를 타이머로 걸어서 호출해봐도 그러지는않내요...
:
: TCustomControl  위에 생성시킨 컨트롤이 그러나봅니다..
:
: 어떤식으로 해결해야할지 모르겠습니다.. 고수님의 관심 부탁드립니다

+ -

관련 글 리스트
59566 TCustomControl 질문드립니다 강대민 1329 2009/12/29
59572     Re:TCustomControl 질문드립니다 Nibble 1179 2009/12/30
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.