如何操作状态栏
为在状态栏中显示正确的信息,曾为此绞尽脑汁,在网上查找及在相关书籍上看到一些方法,我归纳出两种方法
1. 状态栏的创建使用应用向导生成如下:
CStatusBar m_wndStatusBar;
;
if (!m_wndStatusBar.Create(this) ||
!m_wndStatusBar.SetIndicators(indicators,
sizeof(indicators)/sizeof(UINT)))
{
TRACE0("Failed to create bar!");
return FALSE;
}
用响应消息的方法
要响应的消息有WM_MENUSELECT,WM_SETMESSAGESTRING两个私有消息,
看下面的源代码
第一个消息的响应函数
void CMainFrame::OnMenuSelect(UINT nItemID, UINT nFlags, HMENU hSystemMenu)
{
CString sFileName;
if(nItemID == AFX_IDS_IDLEMESSAGE){
sFileName = "就绪";
// Set prompt in status bar.
SendMessage(WM_SETMESSAGESTRING, (WPARAM)0, (LPARAM)(LPCTSTR)sFileName);
return;