몇 가지 불투명 한 복잡한 컨트롤이있는 투명한 배경을 가진 Direct2D 응용 프로그램을 만들고 싶습니다. 이 문제는 몇 가지 하위 문제로 나눌 수 있습니다.Direct2D : 투명한 부모 창을 통한 불투명 한 자식 창
아키텍처 : 컨트롤을 자식 창으로 구현해야합니까? 이 방법이 올바른 방법이라고 생각합니다. 대신 자식 창 기능을 구현하는 Direct2D 다각형을 만드는 것이 좋습니다.
SetWindowLong(m_hwnd, GWL_EXSTYLE, GetWindowLong(m_hwnd, GWL_EXSTYLE) | WS_EX_LAYERED);
SetLayeredWindowAttributes(m_hwnd, 0, (255 * 50)/100, LWA_ALPHA);
을 그리고 WS_CHILD으로 자식 창을 만듭니다
나는 부모 창을 초기화하여이를 구현하기 위해 노력했다. 이로 인해 배경을 포함한 모든 D2D 졸음이 투명한 아동이 생겼습니다. 아이를 불투명하게 만들 수있는 방법을 찾지 못했습니다. 자식 창을 만들 때 WS_POPUP 또는 WS_OVERLAPPED 불투명도 문제는 해결되지만 하위 창은 부모와 관련없는 바탕 화면에 있습니다.계층화 된 창? 계층화 된 Windows에서 작업하기로 결정했으나 VistaSP2 이상에서 대상을 지정하기 때문에 더 나은 솔루션이 될 수 있습니다. 나는 해결책을 시도했다 here 그러나 나는 너무 그것을 실행하지 못했다.