MFC单文档修改标题和标题图标

一.修改标题

在doc类中OnNewDocument函数修改,添加修改的标题,如下:

BOOL CKTLXSubjectShowDoc::OnNewDocument()
{
    if (!CDocument::OnNewDocument())
        return FALSE;

    SetTitle(_T("测试标题"));

    return TRUE;
}


二.修改标题后半部分

单文档标题通常会有两部分组成,例如:标题名称—工程名称,修改StringTable的IDR_MAINFRAME的标题,将第一个\n之前的字符串替换为

标题\n\nTestSingleTitle\n\n\nTestSingleTitle.Document\nTestSingleTitle.Document


三.掉标题的后半部分

方法1:在CTestSingleTitleApp::InitInstance()中调用如下语句m_pMainWnd->SetWindowText(_T("标题"));或在其他地方用(AfxGetMainWnd())->SetWindowText(_T("标题"));也可以得到相同的结果。


方法2:可以通过利用CWnd::SetWindowText即:void SetWindowText( LPCTSTR lpszString );重载CFramWnd类的OnUpdateFrameTitle函数

void CMainFrame::OnUpdateFrameTitle(BOOL bAddToTitle)
{
     //  TODO: 在此添加专用代码和/或调用基类 
     SetWindowText(_T( " 标题 " ));
    CFrameWnd::OnUpdateFrameTitle(bAddToTitle);
}

 方法3:在CMainFrame的PreCreateWindow函数中修改窗口风格:

BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
           cs.style  &=  ~ (LONG) FWS_ADDTOTITLE;
           return CFrameWnd::PreCreateWindow(cs);
}


PS:

多文档中修改标题的前半部分和单文档一样

去掉标题的前半部分:

在CMainFrame的PreCreateWindow函数中修改窗口风格:

BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
           cs.style  &=  ~ (LONG) FWS_ADDTOTITLE;
           return CFrameWnd::PreCreateWindow(cs);
}

修改标题的后半部分:
在上面函数中添加一行:m_strTitle = "标题 ";

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值