【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控制、更改静态框中更改字体颜色大小背景

相关推荐
钓鱼的肝3 小时前
梳理(1-5)
c++·经验分享·笔记·算法·青少年编程
jimy14 小时前
readelf 查看“派生类”的vtable符号
开发语言·c++
蒸蒸yyyyzwd5 小时前
cpp 选手秋招学习笔记 day37 面经学习
c++·八股
YYYing.5 小时前
【C++进阶系列 (七)】C++ RTTI 深度剖析:从 typeid 到 dynamic_cast 的底层之旅
开发语言·c++·c/c++·rtti
钓鱼的肝6 小时前
csp-j-s总结(2)
c++·经验分享·笔记·算法·青少年编程
重生的黑客6 小时前
Qt 常用控件精讲(1):QWidget 核心属性全解 —— 从 geometry 到 qrc 与 QSS
c++·qt·qwidget·qss·常用控件
Hespethorn7 小时前
取 `X-Forwarded-For` 首段做频控 key,等于把限流开关交给了调用方
c++
米糕闯编程7 小时前
鱼香ros2(七)功能包组织C++节点
c++·ros2·cmakelists
汉克老师7 小时前
GESP2026年9月认证C++四级( 第三部分编程题(1、新汉诺塔))精讲
c++·gesp·小学生·学c++编程
唠玖馆8 小时前
智能指针详解
c++