質問は次のようなものです: 私は VS2005 で Windows アプリケーションを作成し、成功を収めています。次に、それを VS2008 に転送します。プログラムをビルドすると、エラー メッセージが表示されます。エラー C4867: 'CGroupBox::CtlColor': function call missing argument list; 「&CGroupBox::CtlColor」を使用して、メンバーへのポインターを作成します。メッセージ マップは次のとおりです。
BEGIN_MESSAGE_MAP(CGroupBox, CButton)
//{{AFX_MSG_MAP(CGroupBox)
ON_WM_PAINT()
ON_WM_CTLCOLOR_REFLECT()
//ON_WM_CTLCOLOR()
ON_WM_ERASEBKGND()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
機能は次のとおりです。
HBRUSH CGroupBox::CtlColor(CDC* pDC, UINT nCtlColor)
{
GetParent()->Invalidate();
return NULL;
}
しかし、 ON_WM_CTLCOLOR() に変更すると、ビルドを成功させることができます。