我加入了m_wndStatusBar.SetPaneText(0, "Ready", TRUE); 函数,让鼠标放在菜单上时能实现中英文动态显示(选择中文时,显示中文;否则,显示英文)
函数具体如下:
LRESULT CMainFrame::OnSetMessageString(WPARAM wParam, LPARAM lParam)
{ static int n = 0;
LRESULT lr = CFrameWnd::OnSetMessageString(wParam, lParam);
WPARAM w = AFX_IDS_IDLEMESSAGE; if(g_szLanguage=="English")
{
switch(wParam)
{
case AFX_IDS_IDLEMESSAGE:
m_wndStatusBar.SetPaneText(0, "Ready", TRUE);
break;
……
default:
break;
}
}
else
{
switch(wParam)
{
case AFX_IDS_IDLEMESSAGE:
m_wndStatusBar.SetPaneText(0, "就绪", TRUE);
break;
……
default:
break;
}
}
return lr;
}
但是无论选择中文或者英文,程序在刚打开运行时,状态栏都显示“就绪”,之后就能够正常的中英文显示了,请问怎么解决这个问题,多谢了!
函数具体如下:
LRESULT CMainFrame::OnSetMessageString(WPARAM wParam, LPARAM lParam)
{ static int n = 0;
LRESULT lr = CFrameWnd::OnSetMessageString(wParam, lParam);
WPARAM w = AFX_IDS_IDLEMESSAGE; if(g_szLanguage=="English")
{
switch(wParam)
{
case AFX_IDS_IDLEMESSAGE:
m_wndStatusBar.SetPaneText(0, "Ready", TRUE);
break;
……
default:
break;
}
}
else
{
switch(wParam)
{
case AFX_IDS_IDLEMESSAGE:
m_wndStatusBar.SetPaneText(0, "就绪", TRUE);
break;
……
default:
break;
}
}
return lr;
}
但是无论选择中文或者英文,程序在刚打开运行时,状态栏都显示“就绪”,之后就能够正常的中英文显示了,请问怎么解决这个问题,多谢了!
改成 AFX_IDS_IDLEMESSAGE 57345 Ready后,运行时还是显示“就绪”