窗口變化相關消息 OnSize、OnSizing和OnGetMinMaxInfo
睿豐德科技 專注RFID識別技術和條碼識別技術與管理軟件的集成項目。質量追溯系統、MES系統、金蝶與條碼系統對接、用友與條碼系統對接
最近用到窗口變化的一些東西,遇到幾個相關的消息函數,簡要分析,作為備忘。
3個消息分別是:WM_SIZE、WM_SIZING、WM_GETMINMAXINFO;分別對應相應的處理函數:OnSize、OnSizing、OnGetMinMaxInfo。
當窗口大小發生變化時,響應的順序依次是:WM_GETMINMAXINFO-->WM_SIZING-->WM_SIZE。
OnGetMinMaxInfo
這個函數在窗口初始化的時候會被調用一次,當窗口大小發生改變的時候也會被調用。利用這個函數,可以比較方便的實現窗口最大最小尺寸的控制。
參數lpMMI是一個結構體指針,其中包含了有關窗口的最大化大小和位置以及最小、最大跟蹤大小的信息。
使用這個函數控制窗口最小尺寸的示例的代碼如下:
[cpp]view plaincopy
OnSizing
這個函數在窗口大小發生變化時被調用。在這個函數里,也可以控制窗口的最大最小尺寸,但是沒有OnGetMinMaxInfo方便。
[cpp]view plaincopy
OnSize
RFID管理系統集成商 RFID中間件 條碼系統中間層 物聯網軟件集成這個函數會在窗口大小改變結束后被調用,通常會在這個函數里重新擺放各個控件的位置及大小。用這個函數暫時沒有找到什么辦法可以控制窗口的最大最小大小。