问题描述
我正在使用MFC创建一个简单的时钟应用程序.我的应用程序标题如下:"CLOCK-[CLOCK1]".如何将其重置为简单的时钟"?仅供参考,我启用了文档视图架构.
I am creating a simple clock application using MFC. My application title appears as follows : "CLOCK - [CLOCK1]". How do I reset it to simply "CLOCK"?FYI, I have enabled the Document-View architecture.
推荐答案
在在这里有一个答案,但我觉得以下解决方案更合适".
There's an answer here, but I feel that the following solution is more "proper".
除了覆盖CMainFrame::OnUpdateFrameTitle()
之外,您还需要覆盖CMainFrame::PreCreateWindow()
,如下所示:
In addition to overriding CMainFrame::OnUpdateFrameTitle()
, you also need to override CMainFrame::PreCreateWindow()
as below:
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{ cs.style &= ~FWS_ADDTOTITLE;
return CFrameWndEx::PreCreateWindow(cs); // replace CFrameWndEx by CFrameWnd if
} // your CMainFrame is based on CFrameWnd
注意:最好使用AfxSetWindowText(m_hWnd, _T("foo"))
而不是SetWindowText(_T("foo"))
以避免过多的闪烁,它会在设置窗口文本之前检查文本是否不同.
A note: it is better to use AfxSetWindowText(m_hWnd, _T("foo"))
instead of SetWindowText(_T("foo"))
to avoid excessive flicker, it checks that the text is different before setting the window text.
这篇关于MFC应用程序标题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!