我希望我的窗口始终保持一定的比例,比如1.33333333。因此,如果窗口为width = 800, height = 600
并且用户将宽度更改为600,我想自动将高度更改为450.
我已经拦截了WM_SIZE
,但我不知道它是否足够;我也不知道如何改变宽度或高度以保持我的比例。
答案 0 :(得分:9)
WM_SIZING被发送到窗口。
而是处理WM_WINDOWPOSCHANGING - 这是由内部SetWindowPos函数在代码(或用户)更改窗口大小时发送的,并且将确保均匀平铺&级联操作遵守您的规模调整政策。
答案 1 :(得分:3)
请参阅WM_SIZING
:http://msdn.microsoft.com/en-us/library/ms632647.aspx
处理此消息可以更改生成的窗口大小。
答案 2 :(得分:0)
尝试 Resize 事件。有一个例子说明如何在链接中保持所需的宽高比。