⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 onrbuttondown(uint nflags, cpoint point).txt

📁 用VC++设计与实现扫雷系统
💻 TXT
字号:

//in file : MineWnd.cpp

void CMineWnd::OnRButtonDown(UINT nFlags, CPoint point)
{
	//笑脸图按钮所在的区域
	CRect rcBtn(m_uBtnRect[1], 15, m_uBtnRect[2], 39)
	//雷区所在的区域
	CRect rcMineArea(MINE_AREA_LEFT, MINE_AREA_TOP,MINE_AREA_LEFT + m_uXNum * MINE_WIDTH,
	MINE_AREA_TOP + m_uYNum * MINE_HEIGHT);

	m_bLRBtnDown = FALSE;
	if (rcMineArea.PtInRect(point))
	{
		//点击雷区域
		if (m_uGameState == GS_RUN)
		{
			m_pNewMine = GetMine(point.x, point.y);
			if (!m_pNewMine) return;
			//判断当前状态是否为左右鼠标同时按下
			if (nflags == (MK_LBUTTON | MK_RBUTTON))
			{
				m_bLRBtnDown = TRUE;
				OnLRBtnDown(m_pNewMine->uRow , m_pNewMine->uCol);
			}
			else
			{
				switch(m_pNewMine->uState)
				{
					case STATE_NORMAL;
						m_pNewMine->uState = STATE_FLAG;
						m_pNewMine->uOldState = STATE_FLAG;
						m_nLeaveNum--;
						break;
					case STATE_FLAG;
						m_pNewMine->uState = STATE_DICEY;
						m_pNewMine->uOldState = STATE_DICEY;
						m_nLeaveNum++;
						break;
					case STATE_DICEY;
						m_pNewMine->uState = STATE_NORMAL;
						m_pNewMine->uOldState = STATE_NORMAL;
						break;
				default:
						break;
				}
			}
			Invalidate();  //重绘
		}
	}
	CWnd::OnRButtonDown(nFlags, point);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -