当前位置: 代码迷 >> VC >> 帮忙分析一下这段代码解决方法
  详细解决方案

帮忙分析一下这段代码解决方法

热度:952   发布时间:2013-02-25 00:00:00.0
帮忙分析一下这段代码
void   CCRectView::OnLButtonDown(UINT   nFlags,   CPoint   point)
{
//   TODO:   在此添加消息处理程序代码和/或调用默认值
if(   m_rectEllipse.PtInRect(point))
{
if(   m_nColor   =   GRAY_BRUSH   )
{
m_nColor   =   BLACK_BRUSH;
}
else
{
m_nColor   =   GRAY_BRUSH;
}
InvalidateRect(m_rectEllipse);
}
CView::OnLButtonDown(nFlags,   point);
}

为什么当我点击   左键的时候   只有第一次可以变成黑色,第二次点击的时候就不再改变颜色了.?求大虾帮忙!我初学!

------解决方案--------------------------------------------------------
if( m_nColor = GRAY_BRUSH )

该成

if( m_nColor == GRAY_BRUSH )

= 赋值
== 比较

------解决方案--------------------------------------------------------
下次碰上这种格式的if语句
最好写成
if( GRAY_BRUSH==m_nColor)

这样就不容易出上面那种问题了..~!!
------解决方案--------------------------------------------------------
不是最好, 逻辑比较应该就是用 == !!!
------解决方案--------------------------------------------------------
= 是赋值
== 是判等 不能混淆。。
  相关解决方案