2010-03-15 3 views
5

내 윈도우가 항상 1.33333333이라고 가정 해 보겠습니다. 따라서 창이 width = 800, height = 600이고 사용자가 너비를 600으로 변경하면 자동으로 높이를 450으로 변경하고 싶습니다.크기를 조정할 때 윈도우가 특정 너비/높이 비율을 유지하도록하는 방법

나는 이미 WM_SIZE을 가로채는 중이지만 충분한 지 모르겠다. 또한 비율을 유지하기 위해 폭이나 높이를 변경하는 방법을 모르겠습니다.

+0

약간 다른 질문이지만 일반적으로 다음과 같은 대답 : http://stackoverflow.com/questions/2406168/constraining-window-position-to-desktop-working-area –

답변

8

WM_SIZING은 사용자가 창 크기를 조정하는 동안 창으로 전송됩니다.

오히려 핸들 WM_WINDOWPOSCHANGING - 코드 (또는 사용자)가 창 크기를 변경할 때 내부 SetWindowPos 함수에 의해 전송되며 타일도 & 크기 조정 작업이 크기 조정 정책을 준수하도록합니다.

+0

완벽하게 작동합니다; 감사! – woor

0

Resize 이벤트를 시도하십시오. 링크에서 원하는 화면 비율을 유지하는 방법에 대한 예가 있습니다.

+0

.NET을 사용하고 있지 않습니다. .NET 믿습니다 :/ – woor

관련 문제