当前位置: 首页 > article >正文

【MFC】如何修改多文档视图的标签

新建工程同之前的几篇博客
新建一个调用菜单,并实现其内容
在这里插入图片描述
以下代码演示创建时设置标题,并保存到子框架中

#include "MFCApplication9Doc.h"
#include "MFCApplication9View.h"
void CMainFrame::On32771()
{
	CMFCApplication9Doc* pDoc;
	POSITION pos = theApp.m_pDocTemplate->GetFirstDocPosition();
	int i = 1;
	while (pos != NULL)
	{
		pDoc = (CMFCApplication9Doc*)(theApp.m_pDocTemplate->GetNextDoc(pos));
		if (pDoc == NULL) break;

		POSITION pos1 = pDoc->GetFirstViewPosition();
		if (pos1 != NULL)
		{
			while (TRUE)
			{
				CMFCApplication9View* pView = (CMFCApplication9View*)pDoc->GetNextView(pos1);
				if(pView==NULL) break;
				CFrameWnd* pFrame = pView->GetParentFrame();
				CString strTitle;
				strTitle.Format(_T("第%d个页面"), i++);
				pFrame->SetWindowText(strTitle);
				pFrame->SetTitle(strTitle);
			}
		}
	}
}

为了在切换窗口时保持标题,需要修改子框架的以下函数
在这里插入图片描述

void CChildFrame::OnUpdateFrameTitle(BOOL bAddToTitle)
{
	CString str = GetTitle();
	SetWindowText(str);

	// CMDIChildWndEx::OnUpdateFrameTitle(bAddToTitle);
}

注意不要调用父类的函数
最后效果如下图:
在这里插入图片描述
源代码见文章绑定的资源


http://www.kler.cn/a/450738.html

相关文章:

  • VS2022 中的 /MT /MTd /MD /MDd 选项
  • Pandas系列|第二期:Pandas中的数据结构
  • shell脚本定义特殊字符导致执行mysql文件错误的问题
  • 性能优化!突破性能瓶颈的尖兵CPU Cache
  • Flutter动画学习二
  • LeNet网络搭建
  • 深入解析Android Recovery系统
  • 代写软件标书哪里找:如何让标书撰写变得高效轻松
  • 自动驾驶---Parking端到端架构
  • 在 .NET Core 中使用 ActionBlock 实现高效率的多步骤数据处理
  • 阿里云ESC服务器一次性全部迁移到另一个ESC
  • 以“技”出圈,珈和科技农业典型案例 “盛放”2024湖北农博会
  • 问题小记-达梦数据库报错“字符串转换出错”处理
  • 深入理解C++23的Deducing this特性(上):基础概念与语法详解
  • curl 放弃对 Hyper Rust HTTP 后端的支持
  • 《Opencv》基础操作详解(3)
  • 全国硕士研究生入学考试(考研)考研时间线之大四
  • 24.12.25 AOP
  • CASA模型相关遥感数据及MODIS NDVI、FPAR遥感产品数据时序重建
  • SpringBoot3——Web开发
  • 软件测试之压力测试【详解】
  • 安卓修改进程数 termux报错signal 9 vmos
  • webpack3 webpack4 webpack5 有什么区别
  • Java重要面试名词整理(四):并发编程(下)
  • 代理模式(JDK,CGLIB动态代理,AOP切面编程)
  • 产品经理如何做运营数据分析?