【25】MFC入门到精通——MFC静态文本框 中字符串 连续输出 不覆盖先前的文本 换行输出

文章目录

  • 1 问题描述
  • 2 方法
  • 3 实例
  • 4 项目源码下载

1 问题描述

比如我做个循环打开若干个文件 pBuf保存文件内容

或者在静态文本框中,多次输出字符提示信息;

但是打开第二个文件的时候调用SetDlgItemText(IDC_EDIT1,pBuf);

显示在第一行,覆盖了先前的内容,我想让它读取的第二个文件内容在第二行显示!

读第三个文件的内容显示在第三行

2 方法

每次在SetDlgItemText之前都先将旧的文本内容+换行+新的文本内容

如:

cpp 复制代码
CString str;
GetDlgItemText(IDC_EDIT1, str);//获取已显示的文本
str = str + _T("\r\n") + pBuf;//加换行、加新的文本,pBuf即新的文件内容
SetDlgItemText(IDC_Edit1, str);

3 实例

当按下 Button4,在静态框输出,不同i语句下的 字符串信息;

换行输出 不覆盖先前的文本

cpp 复制代码
void CMFCApplication1Dlg::OnBnClickedButton4()
{
	// TODO: 在此添加控件通知处理程序代码
	CString str;

	for (int i = 0; i < 3; i++) {
		if (i == 0)
		   str = _T("MFC运行或调试在 VS输出框,打印字符串信息");
		
		else if (i == 1)
		str = _T(" ==  Good");

		else if (i == 2)
		str.Format(TEXT("第 %d 次连续输出"), i);


		CString str2;
		GetDlgItemText(IDC_STATIC_LOG, str2);//获取已显示的文本
		str2 = str2 + _T("\r\n") + str;//加换行、加新的文本,ICR_Process_result即新的文件内容
		SetDlgItemText(IDC_STATIC_LOG, str2);
	}	
}



4 项目源码下载

项目源码下载:
多功能综合示例-串口控制、自动查询串口、文本框换行输出、IP控制、更改静态框中更改字体颜色大小背景

相关推荐
小超人诞生日记1 小时前
C++ 异常机制详解:从抛出捕获到异常安全
c++·算法
多弗朗皮卡丘2 小时前
C++的IO流
开发语言·c++·io流·文件io流
xiangyun613 小时前
C++ 手撕 shared_ptr:引用计数与控制块到底长什么样?
开发语言·c++·算法·面试·stl
SunkingYang3 小时前
C++14 vs C++17:新特性对比与用法指南
c++·新特性·用法·c++14·示例·c++17
SunkingYang4 小时前
C++ Lambda 表达式原理详解
c++·lambda·理论·原理·表达式
xiaoye-duck4 小时前
《C++ 工具库实战》GTest 单元测试:断言、全局环境、局部夹具与底层原理
c++·单元测试·第三方库
学逆向的5 小时前
C++ 匿名命名空间
开发语言·c++·网络安全
miller-tsunami5 小时前
内存管理&模板
c++·算法·内存管理·模板
青少儿编程课堂5 小时前
蓝桥杯青少组·全国青少年信息素养·电子学会Scratch考级:校园智能抢答器项目解析
c++·python·算法·bfs·信息学竞赛
充值内卷5 小时前
[特殊字符] 自己动手做一个类 tldraw 的桌面白板:StepDraw 开源啦(C++ + WebView2 + Canvas)
开发语言·c++