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
[63841] Re:Re:DoubleBuffered 값이 동작하지 않는 이유?
아제나 [azena] 1385 읽음    2011-02-28 16:30
ParentBackground 값의 문제가 맞는 것 같습니다.
기본값이 true 값이니 이것도 만져줘야 정상 동작하겠네요.
답변 감사드립니다.

임시로 아래와 같이 해결하고 있었습니다.
Panel->ControlStyle = Panel->ControlStyle << csOpaque;


장성호 님이 쓰신 글 :
: 정확히는 모르겠는데요..
:
: 혹시 TPanel에
: ParentBackground라는 프로퍼티가 있으면 그놈을 false로 해보세요
:
: 그럼..
:
: 아제나 님이 쓰신 글 :
: : 현재 증상은 이렇습니다.
: :
: : 새로운 VCL 프로젝트의 폼을 하나 만듭니다.
: : 폼 위에 패널을 배치합니다.
: : 패널에 DoubleBuffered 값을 true로 줍니다.
: : 패널 위에 라벨을 하나 배치합니다.
: : 라벨의 Caption을 계속 갱신해줍니다.
: : 라벨이 깜빡거립니다.
: :
: : 안 깜빡거려야 정상인거 같은데, 깜빡거리네요?
: : 이런 상황에서는 원래 깜빡거리는건가요?
: :
: : 패널에 OnClick에 다음과 같은 코드를 넣었습니다.
: : 글씨 크기를 좀 크게 하니까 깜빡임이 엄청 심합니다.
: :
: :
: : 
: : void __fastcall TForm1::PanelClick(TObject *Sender)
: : {
: :   DWORD startTime = timeGetTime();
: : 
: :   Panel->DoubleBuffered = true;
: : 
: :   while( Application->Terminated == false )
: :   {
: :     DWORD currentTime = timeGetTime() - startTime;
: : 
: :     DWORD msec;
: :     DWORD sec;
: :     DWORD min;
: :     DWORD hour;
: : 
: :     msec = currentTime%1000/10;
: :     sec = currentTime/1000%60;
: :     min = currentTime/1000/60%60;
: :     hour = currentTime/1000/60/60;
: : 
: :     char str[255];
: :     sprintf( str, "%02u:%02u:%02u.%02u", hour, min, sec, msec );
: : 
: :     Label->Caption = str;
: : 
: :     Application->ProcessMessages();
: :   }
: : }
: : 
: : 

+ -

관련 글 리스트
63838 DoubleBuffered 값이 동작하지 않는 이유? 아제나 1193 2011/02/28
63840     Re:DoubleBuffered 값이 동작하지 않는 이유? 장성호 1243 2011/02/28
63841         Re:Re:DoubleBuffered 값이 동작하지 않는 이유? 아제나 1385 2011/02/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.