MFC 属性表单的问题

问题就是www&vckbase&com/code/downcode&asp?id=1589(受累将上边的&换为.)这里面的方案5中,有这样一句voidCTabSheet:... 问题就是
www&vckbase&com/code/downcode&asp?id=1589
(受累将上边的&换为.)
这里面的方案5中,有这样一句
void CTabSheet::OnLButtonDown(UINT nFlags, CPoint point)
{
CTabCtrl::OnLButtonDown(nFlags, point);

//判断是否单击了其他标签
if(m_nCurrentPage != GetCurFocus())
{
//将原先的子对话框隐藏
m_pPages[m_nCurrentPage]->ShowWindow(SW_HIDE);
m_nCurrentPage=GetCurFocus();
//显示当前标签所对应的子对话框
m_pPages[m_nCurrentPage]->ShowWindow(SW_SHOW);
}

}
我的问题就是这里面的CTabCtrl::OnLButtonDown(nFlags, point);用意何在?为何我去掉后就会出现不能选择的问题。
谢谢,而且我在CTabCtrl并看不到有这样一个静态函数啊~~~msdn没写啊~~
展开
 我来答
silvergingko
2009-09-20 · TA获得超过5945个赞
知道小有建树答主
回答量:688
采纳率:0%
帮助的人:868万
展开全部
CTabCtrl::OnLButtonDown(nFlags, point);这个不是静态函数,只是在CTabCtrl的子类CTabSheet中直接调用了它的父类的OnLButtonDown。这个函数是响应鼠标左键单击的一个消息处理函数,MSDN不可能把所有的消息处理函数都列在每一个MFC类的成员函数列表里的。这个函数名字楼主以前没碰到过?
必须要调用CTabCtrl::OnLButtonDown(nFlags, point);因为标签控件被单击后产生的默认行为是把被单击的标签显示在最前面。这个显示动作所包含的代码在CTabCtrl::OnLButtonDown(nFlags, point);里面,所以必须调用。才会使标签产生我们平常看到的视觉效果。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式