CFrameWndEx::AdjustDockingLayout() 和 CFrameWndEx::RecalcLayout() 有什么区别?
What is difference between CFrameWndEx::AdjustDockingLayout() and CFrameWndEx::RecalcLayout()?
CFrameWndEx::AdjustDockingLayout()
和 CFrameWndEx::RecalcLayout()
有什么区别?
他们都执行与文档所述类似的任务:AdjustDockingLayout(), RecalcLayout()。
除此之外,Interface Elements doc 说
You can call AdjustDockingLayout or RecalcLayout when you have to adjust the docking layout, and the framework redirects this call to the docking manager.
AdjustDockingLayout()
和 RecalcLayout()
执行相同的工作吗?
AdjustDockingLayout
比RecalcLayout
低一级。 RecalcLayout
调用 AdjustDockingLayout
。但是 AdjustDocinkgLayout
有一个额外的参数用于延迟 windows 定位(HDWP)。
因此,当您启动程序或进行模式切换时从注册表恢复 windows 的布局时,不会调用 RecalcLayout
。在这种情况下 AdjustDockingLayout
被调用。
所以只要你在内部需要它,我总是会打电话给 RecalcLayout
。
详细说明:RecalcLayout
也为其每个子 windows 调用 RecalcLayout
,最后只为当前的 window 调用 AdjustDockingLayout
。
CFrameWndEx::AdjustDockingLayout()
和 CFrameWndEx::RecalcLayout()
有什么区别?
他们都执行与文档所述类似的任务:AdjustDockingLayout(), RecalcLayout()。
除此之外,Interface Elements doc 说
You can call AdjustDockingLayout or RecalcLayout when you have to adjust the docking layout, and the framework redirects this call to the docking manager.
AdjustDockingLayout()
和 RecalcLayout()
执行相同的工作吗?
AdjustDockingLayout
比RecalcLayout
低一级。 RecalcLayout
调用 AdjustDockingLayout
。但是 AdjustDocinkgLayout
有一个额外的参数用于延迟 windows 定位(HDWP)。
因此,当您启动程序或进行模式切换时从注册表恢复 windows 的布局时,不会调用 RecalcLayout
。在这种情况下 AdjustDockingLayout
被调用。
所以只要你在内部需要它,我总是会打电话给 RecalcLayout
。
详细说明:RecalcLayout
也为其每个子 windows 调用 RecalcLayout
,最后只为当前的 window 调用 AdjustDockingLayout
。