在MFC中更新CMDIChildWnd标题

时间:2012-06-22 12:47:06

标签: visual-c++ mfc

当我打开文档时,我正在使用CScrollView中的CMDIChildWnd的SetWindowText()来设置标题。但是标题没有得到更新,直到我点击图片或我最小化应用程序。

我已经尝试过调用Invalidate(),UpdateWindow()但这些都没有工作,但无论如何我都需要更新标题。

任何人都可以让我知道我该怎么做。

谢谢!

1 个答案:

答案 0 :(得分:2)

使用您想要的标题调用文档SetTitle()方法。 SetTitle()将调用CDocument :: UpdateFrameCounts(),UpdateFrameCounts()将调用CMDIChildWnd :: OnUpdateFrameTitle(TRUE),这将更新你的框架。

我认为SetWindowText()可以工作,但可能是因为UI更新或其他东西后来调用OnUpdateFrameTitle(),并且OnUpdateFrameTitle()将标题设置回原来的状态。在CMDIWHildWnd :: OnUpdateFrameTItle()或CMDIFrameWnd版本中尝试断点。