VCL 스타일을 실험하고 있습니다. 이것은 바보 같은 질문 일지 모르지만 스타일을 사용할 때 배경이 다른 양식을 가질 수 있습니까? 양식 배경 (클라이언트 영역)은 VCL 스타일 디자이너에서 지정되며 양식의 Color
속성을 무시하는 것으로 보입니다.VCL 스타일로 배경색을 지정 하시겠습니까?
다른 배경색으로 양식을 만들려면 어떻게해야합니까? 예를 들어 모달 대화 상자의 배경색이 기본 양식과 다를 수 있습니다.
VCL 스타일을 실험하고 있습니다. 이것은 바보 같은 질문 일지 모르지만 스타일을 사용할 때 배경이 다른 양식을 가질 수 있습니까? 양식 배경 (클라이언트 영역)은 VCL 스타일 디자이너에서 지정되며 양식의 Color
속성을 무시하는 것으로 보입니다.VCL 스타일로 배경색을 지정 하시겠습니까?
다른 배경색으로 양식을 만들려면 어떻게해야합니까? 예를 들어 모달 대화 상자의 배경색이 기본 양식과 다를 수 있습니다.
는 네, 그것은 가능하다 : 델파이 XE3, XE4, XE5를 사용하는 경우 : 만 양식의 StyleElements
속성에서 seClient
를 제거해야합니다
Form3.StyleElements := [seFont, seBorder];
당신은 델파이를 사용하는 경우 XE2 : 당신은 TFormStyleHook
클래스를 무시하고 WM_ERASEBKGND
메시지를 잡기 및 기본 메시지 처리하지 않고 반환해야합니다 :
type
TFormStyleHookEx = class(TFormStyleHook)
procedure WMEraseBkgnd(var Message: TMessage); message WM_ERASEBKGND;
end;
{ TFormStyleHookEx }
procedure TFormStyleHookEx.WMEraseBkgnd(var Message: TMessage);
begin
Message.Result := 1;
end;
initialization
TStyleEngine.RegisterStyleHook(TForm3, TFormStyleHookEx);
을 0
가능한 [VCL 스타일을 사용하는 TComboBox의 배경색을 지정하는 방법] (http://stackoverflow.com/questions/16538890/how-to-color-the-background-of-a- tcombobox-with-vcl-styles-enabled) –
또한 유용한 링크는 http://stackoverflow.com/questions/9906312/ –
에 있습니다 @ Arioch'The 제공된 솔루션이 포함되어 있습니다. 몇 가지 사항을 적용하면됩니다. TFromStyleHookExt = class (TFormStyleHook)'TWinControlClass (Control)을 변경합니다. TForm (Control). 적응 초기화 TStyleManager.Engine.RegisterStyleHook (TForm_XY, TFromStyleHookExt); WndProc를 변경하십시오. – bummi