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

相关推荐
xlq223226 小时前
22.多态(上)
开发语言·c++·算法
D_evil__7 小时前
[C++高频精进] 并发编程:线程基础
c++
Mr_WangAndy7 小时前
C++17 新特性_第二章 C++17 语言特性_std::any和string_view
c++·string_view·c++40周年·c++17新特性·c++新特性any
水天需0109 小时前
C++ 三种指针转换深度解析
c++
言言的底层世界9 小时前
c++中STL容器及算法等
开发语言·c++·经验分享·笔记
Mr_WangAndy10 小时前
C++17 新特性_第一章 C++17 语言特性___has_include,u8字符字面量
c++·c++40周年·c++17新特性·__has_include·u8字面量
liu****10 小时前
八.函数递归
c语言·开发语言·数据结构·c++·算法
Vanranrr10 小时前
C++临时对象与悬空指针:一个导致资源加载失败的隐藏陷阱
服务器·c++·算法
BestOrNothing_201510 小时前
【C++基础】Day 5:struct 与 class
c++·c·class类·struct结构体·typename模板·private与public
枫叶丹411 小时前
【Qt开发】Qt窗口(三) -> QStatusBar状态栏
c语言·开发语言·数据库·c++·qt·microsoft