WS_EX_LAYERED 확장 스타일 집합이있는 계층화 된 폼이 있습니다. CreateWindowEx (...) API 함수를 사용하여 자식 "편집"컨트롤을 만들었습니다. 그곳에는 컨트롤이 있지만 페인트되지 않고 아무것도 폼에 나타나지 않습니다.C에서 계층화 된 창에서 알파 블렌딩 된 컨트롤
맨 위 창에 WS_EX_LAYERED 스타일을 사용하면 WM_PAINT 메시지가 더 이상 전송되지 않으며 두 자식 컨트롤이 메시지를받지 못하여 왜 나타나지 않는지 알고 있습니다.
양식의 불투명도가 255로 설정되고 배경이 UpdateLayeredWindow (...) API를 사용하여 투명 이미지로 그려지는 것을 고려하십시오.
내가 EDIT 컨트롤 위로 마우스를 가져 가면 텍스트 커서가 나타나고 그 안에 텍스트를 복사 할 수 있습니다.
내가 처리해야하는 문제는 어떻게 든 사용자 페인트를 허용하는 컨트롤을 만드는 것이라고 생각합니다.
양식과 같은 기술로 컨트롤을 페인팅했는데 폼에서 호환되는 DC를 만들었지 만 이것이 가능할 지 모르겠다. 내 컨트롤이 아직 그려지지 않았다. .
해당 컨트롤에 대한 WM_PRINTCLIENT를 보내면 작동해야합니까? 이 경우 DC는 계층화 된 상위 형식이어야합니다. 나는 또한 이것을 시도했지만 그것을 작동하게 만들 수 없었다.
정규형 : http://img580.imageshack.us/i/formy.png/
층 형태 : http://img6.imageshack.us/i/layeredform.png/
내 질문 난 내 편집 컨트롤은 알파 혼합 사용자 페인트를 받아 어떻게해야합니까? 어떻게 계층화 된 폼에 알파 블렌드 컨트롤을 페인트합니까? 내가 UpdateLayeredWindow을 적용 할 때 내가 그것을 할 수있는 방법을 발견 결국
질문에 응답 – dst
컨트롤을 그리는 방법에 대한 코드를 제공 할 수 있습니까? – Patrik