首先我们启动Visual Studio2005,新建项目Test利用MFC App Wizard 生成MFC应用程序框架。程序运行后显示如下: 修改窗口标题字符串“无标题-Test” <1> 修改前半部分 方法一:更改StringTable的IDR_MAINFRME的标题,将第一个\n之和第二个\n之间添加字符串fan为: 方法二:在 CEX041Doc::OnNewDocument()中添加SetTitle("我的程序"); BOOL CTestDoc::OnNewDocument() { if (!CDocument::OnNewDocument()) return FALSE; // TODO: 在此添加重新初始化代码 SetTitle(L"fan"); // (SDI 文档将重用该文档) return TRUE; } 方法三:重载虚函数SetTitle { // TODO: 在此添加专用代码和/或调用基类 CDocument::SetTitle(L"fan"); } 运行结果如下: <2>修改后半部分 修改StringTable的IDR_MAINFRME的标题,将第一个\n之前的字符串Test替换为XJTU:XJTU\nfan\nEX041\n\n\nEX041.Document\nEX041.Document 运行结果如下: <3>去掉标题中间的“-” 方法一:可以通过利用CWnd::SetWindowText即:void SetWindowText( LPCTSTR lpszString );在C EX041App::InitInstance()中调用如下语句m_pMainWnd->SetWindowText(L"XJTU");或在其他地方用(AfxGetMainWnd())->SetWindowText(L"XJTU");也可以得到相同的结果。 方法二:重载CFramWnd类的OnUpdateFrameTitle函数,这个函数在VC提供的帮助文件中找不到,利用类向导重写virtual void OnUpdateFrameTitle(BOOL bAddToTitle) void CMainFrame::OnUpdateFrameTitle(BOOL bAddToTitle) { // TODO: 在此添加专用代码和/或调用基类 SetWindowText(L"XJTU"); CFrameWnd::OnUpdateFrameTitle(bAddToTitle); } 方法三:在CMainFrame的PreCreateWindow函数中修改窗口风格:
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { cs.style &= ~(LONG) FWS_ADDTOTITLE; return CFrameWnd::PreCreateWindow(cs); } 使用此方法,窗口的标题只显示IDR_MAINFRAME字符串中第一个\n之前的部分。 运行结果如下:
![]() (#)
|
|