17、Windows 资源开发全解析

17、Windows 资源开发全解析

Windows 资源开发全解析

1. 更新状态栏

当信息频繁变化时,使用更新处理程序来更新状态栏是首选方法。可以使用CCmdUI类的成员函数SetText()Enable()来更改窗格文本和禁用窗格。

以下是状态栏窗格更新处理程序的消息映射示例,该更新处理程序用于显示最新射击的 x 和 y 坐标:

BEGIN_MESSAGE_MAP(DuckHuntFrameWnd, CFrameWnd) ON_UPDATE_COMMAND_UI(ID_SHOT_X, OnUpdateX) ON_UPDATE_COMMAND_UI(ID_SHOT_Y, OnUpdateY) // 其他消息映射条目 END_MESSAGE_MAP() void DuckHuntFrameWnd::OnUpdateX(CCmdUI * pCmdUI) { CString location; location.Format("X - %d", m_Shot.x); pCmdUI->SetText(location); } void DuckHuntFrameWnd::OnUpdateY(CCmdUI * pCmdUI) { CString location; location.Format("Y - %d", m_Shot.y); pCmdUI->SetText(location); }

每次鼠标点击时,x 和 y 坐标都会显示在状态栏