MFC笔记——第一节课(统计编辑框中的字符串个数,以及清除编辑框)

国际惯例,先贴代码在解释代码。本次界面如下,怎么创建工程就不说了。

void CMFCApplication2Dlg::OnBnClickedButtonCount()
{
	// TODO: Add your control notification handler code here

	CString strInput;
	GetDlgItemText(IDC_EDIT_INPUT,strInput);
	int nLen = strInput.GetLength();
	CString strOutPut; 
	strOutPut.Format(_T("字符串长度:%d, 字符个数: %d"),nLen,nLen);
	SetDlgItemText(IDC_STATIC_OUTPUT,strOutPut);
}


void CMFCApplication2Dlg::OnBnClickedButtonClear()
{
	// TODO: Add your control notification handler code here
	CString str;
	int nLen = 0;
	str.Format(_T("字符串长度:%d, 字符个数: %d"),nLen,nLen);
	SetDlgItemText(IDC_STATIC_OUTPUT, str);
	CString sstr;
	SetDlgItemText(IDC_EDIT_INPUT,sstr);
}

注解:

MFC虽然使用C++语法但是好多细节问题和C++有所不同,MFC之所以比较好用个人认为就是微软设计的类库比较强大,基本上能用到了全都有。

第一个细节问题:

MFC使用的字符串是CString,这个字符串是不可以随便赋值的,比如CString str = "1";是不被允许的,个人理解是这个字符串是标准C++字符串,和MFC的不一样,

第二个细节:CString.Format()

这个理解成类型转换比较好,放一篇博文  https://blog.csdn.net/wangkaishou/article/details/5846152 讲的很详细。

对于_t和L :

_T是一个宏,如果项目使用了Unicode字符集(定义了UNICODE宏),则自动在字符串前面加上L,否则字符串不变。因此,Visual C++里边定义字符串的时候,用_T来保证兼容性。VC支持ascii和unicode两种字符类型,用_T可以保证从ascii编码类型转换到unicode编码类型的时候,程序不需要修改。

可以参考博文:https://blog.csdn.net/u010003835/article/details/47606621

第三个细节:库函数真的好用

GetDlgItemText(IDC_EDIT_INPUT,strInput);

SetDlgItemText(IDC_STATIC_OUTPUT,strOutPut);

从函数名字就知道这个API是干什么的,例如Get是获取,set是写入,Dlg是界面ItemText是选择文本,其中的第一个参数就是控件的ID,第二个参数是存储变量。

 

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

波雅_汉库克

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值