其他分享
首页 > 其他分享> > # vs2010下的基于对话框的MFC(统计字符长度与个数)

# vs2010下的基于对话框的MFC(统计字符长度与个数)

作者:互联网

**

具体步骤**

1.创建MFC
2.添加3个控件
按钮控件
在这里插入图片描述
改为“统计”
编辑框控件
在这里插入图片描述
静态文本框控件
在这里插入图片描述
3.点击编辑框,修改编辑框属性
修改为true,否则调试时按回车会结束运行

给编辑框改为多行(Multiline)选true,修改ID为IDC_EDIT_InPut,也可自行选择增加水平和垂直滚动条分别为Horizontal Scrollbar和vertical Scrollbar

在这里插入图片描述

在这里插入图片描述
4.双击按钮控件添加代码

void CdemoDlg::OnBnClickedButton1()
{
	// TODO: 在此添加控件通知处理程序代码

	CString strInput;//使用CString时,需定义 #include"atlstr.h"
    GetDlgItemText(IDC_EDIT_InPut,strInput);//这里用到了编辑文本框ID
	int nlen= strInput.GetLength();
	int nCount=0;
	for( int i=0;i<nlen;i++)//字符集用多字节时
	{
		if((BYTE)strInput[i]>0x7f)//判断输入为中文时
		{
			++i;//略过,只记录一次
		}
		nCount++;
	}

	CString strOutput;
	strOutput.Format(_T("字符串长度:%d,字符个数:%d"),nlen,nCount); 
	SetDlgItemText(IDC_STATIC_OUPUT,strOutput);//这里修改了静态文本框的ID
	
}

此代码为解决字符集使用多字节时,中文字符时的问题如使用Unicode字符集则没毛病。

for( int i=0;i<nlen;i++)//字符集用多字节时
	{
		if((BYTE)strInput[i]>0x7f)//判断输入为中文时
		{
			++i;//略过,只记录一次
		}
		nCount++;
	}
  1. Ctrl+F5调试运行
    在这里插入图片描述
    记录学习。

标签:控件,MFC,对话框,++,nCount,vs2010,int,文本框,编辑框
来源: https://blog.csdn.net/three_treess/article/details/104657275