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
[74838] Re:Re: VCL 때문에 일어나는 문제
질문 [] 3037 읽음    2018-03-26 23:09
저는 Radio Button 컬러가 안바껴서 원인이 뭘까
궁금했었는데 이유가 있었군요. 몰랐던걸 알게되었네요
감사합니다

설명해주신대로 manifest 설정 바꾸니까 색상이 바뀌는데요. 전쳬 UI가 촌스러워지던데요. 특정 콘트롤만 적용되게
하려면 어떻게 해야 하나요


빌더(TWx) 님이 쓰신 글 :
: 양승현.갈매기 님이 쓰신 글 :
: :
: :
: : Properties에
: : BackgroundColor
: : BarColor
: : 이 두가지는 왜 변경해도 적용이 안되는걸까요?
: :
: :
: : SendMessage(ProgressBar1->Handle, PBM_SETBARCOLOR, 0, (LPARAM)(COLORREF)clRed);
: :
: : ProgressBar1->Perform( PBM_SETBARCOLOR, 0, clRed);
: :
: : 검색해보니 두가지 방법이 있어서
: : 적용해보니 두가지 방법이 다 아무 반응이 없습니다.
: :
: : XE로 넘어오면서 뭔가 바뀐걸까요?
: :
: : 혹시 아시는 고수분 계시면 도움 주시면 감사하겠습니다.
: :
: :
:
:
: 답변:
:
:
: 위와 같은 문제는 VCL 라이브러리가 OS가 제공하는 Theme 기능을 고려해서 구현되어 있지 않기 때문 입니다.
:
: radio button, groupbox, checkbox 및 ProgressBar를 포함해서 배경칼러 폰트컬러 등이 원하는 대로 동작하지 않는 이유는
: XP 고전 classic Theme 이 아닌 Modern Theme 이 사용될 경우, OS 가 사용자들에게 고유한 Look & feel을 제공하기 위해서
: 콘트롤의 색깔 폰트색상 등을 변경할 수 있도록 하는 관련 메세지를... 콘트롤를 서브클래싱 한 오너에 라우팅하지 않기 때문인데.
:
: 프로젝트 옵션에서 Theme 기능을 사용하지 않도록 Manifest 옵션을 설정하든가 (RAD 10.2 경우에는 'Enable Runtime Themes' 끄기)
: 해당 콘트롤 개별적으로 Windows Theme API를 이용해서 Modern Theme 이 적용되지 않고, 고전 XP classic Theme이 적용
: 되도록 해줘야 합니다.
:
: Modern Theme 이 사용 되는 경우라도...
: Theme API를 이용해서 해당 콘트롤의 칼러, 폰트색상을 커스텀 하게 바꿀 수 있도록 관련 메세지들을 서브클래싱한 오너에
: 전달해 주도록 VCL 라이브러리가 구현되어 있으면 가능 한데...
:
: VCL에는 그런 코드가 구현되어 있지 않습니다. 엠바 애들이 게을러 터진 건지. 고전 XP classic Theme 만 기준으로 해서 만들어진
: 기존의 구조를 지금 까지 바꾸지 않고 그대로 사용하고 있지요.
:
:

+ -

관련 글 리스트
74822 progressbar color 관련 질문입니다. 양승현.갈매기 3065 2018/03/21
74831     Re: VCL 때문에 일어나는 문제 빌더(TWx) 3172 2018/03/25
74843         Re:Re: VCL 때문에 일어나는 문제 양승현.갈매기 3061 2018/03/28
74838         Re:Re: VCL 때문에 일어나는 문제 질문 3037 2018/03/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.