MFC工作学习笔记(更新ing)

这篇博客是作者在学习MFC过程中遇到的问题和解决方法的记录,包括TREECTRL控件的NM_CLICK事件处理,TABCTRL控件TCN_SELCHANGING消息的返回值设置,多线程与计时器的区别,以及如何改变ListCtrl行颜色的技巧。随着时间的推移,作者将继续更新遇到的问题和解决办法。
摘要由CSDN通过智能技术生成

有时候遇到一些问题,当时抓耳挠腮半天找不到头绪,最后问题解决了,没记录,以后遇到了又抓耳挠腮(码农记性不好,不知是不是通病?)。故开此贴,聊以记录所遇问题及解决方法。


2013-5-29

TREECTRL控件NM_CLICK事件,获取当前选中ITEM时错误(只有第一次是正确,因为选中的第一条),发现GetSelectedItem获得的ITEM都是上一次选中的。想来这个NM_CLICK单击消息发送顺序在选中消息之前。改为TVN_SELCHANGED事件,OK了。


2013-5-30

TABCTRL控件TCN_SELCHANGING消息事件的返回值。我希望处理TCN_SELCHANGING消息,在一定条件下不要切换TAB页。

然后我查了MSDN说:

Return Value
TRUE prevents the selection from changing. FALSE allows the selection to change.

可是用ClassWizard添加的响应函数却是无返回值的:

void CDlgMain::OnSelchangingTabXXX(NMHDR* pNMHDR, LRESULT* pResult) 
{
// TODO: Add your control notification handler code here

	*pResult = 0;
}


是的,这里的*pResult就是返回值。系统默认*pResult = 0,也就是FALSE。只需要将*pResult = TRUE就OK了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值