2014-07-07 1 views

답변

0

(내가 뭘하고 싶은 통해 에어로 글라스 효과를 할 수 있도록 검게 칠해야하고 어떤 부분은 부모의 배경 색상을 페인트하는 것을 삽입 한 아이의 부분 분별입니다.) 이 작업을 수행. 개발자는 클라이언트 영역으로 확장 한 프레임의 크기를 알고 있어야합니다.

MARGINS g_Margins; 
g_Margins.cxLeftWidth = 0; 
g_Margins.cxRightWidth = 0; 
g_Margins.cyTopHeight = 15*fontHeight; 
g_margins.cyBottomHeight = 7*fontHeight; 

DwmExtendFrameIntoClientArea(g_hwnd, g_margins); 

: 퍼블릭 도메인으로 공개 코드. 기여가 필요하지 않습니다.

+0

오케이. 타사 라이브러리와의 상호 운용성에 많은 도움이됩니다. – jnm2

+0

@ jnm2 내 생각 엔 호스트는 자식 컨트롤을 배치하는 호스트이고, 호스트는 자식 컨트롤이 유리 위에 있는지 여부를 결정합니다. 주인은 지금 아이에게 렌더링을 알리는 사람이어야합니다. 또 다른 방법은 구성 요소 라이브러리가 항상 컨트롤의 모양에 적합한 알파 채널을 사용하여 그려지는 것입니다. 비 글래스에서 렌더링 될 때 알파는 무시됩니다. 유리 위에 렌더링되면 컨트롤이 의도 한대로 나타납니다. –