mfcでメッセージをメインウィンドウに送信する方法は?

MFCアプリケーションでメッセージをメインウィンドウに送信するには、AfxGetMainWnd関数を使用してメインウィンドウのポインタを取得し、その後、PostMessageまたはSendMessage関数を使用してメッセージを送信します。

例えば、MFCアプリケーションでカスタムメッセージをメインウィンドウに送信するために以下のコードを使用できます:

// 获取主窗口指针
CWnd* pMainWnd = AfxGetMainWnd();

// 发送消息给主窗口
UINT msg = WM_USER + 1; // 自定义消息
pMainWnd->PostMessage(msg, 0, 0);

メインウィンドウクラスのメッセージマッピング関数でこのカスタムメッセージを処理することができます。例えば:

BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
    ON_MESSAGE(WM_USER + 1, OnCustomMessage)
END_MESSAGE_MAP()

LRESULT CMainFrame::OnCustomMessage(WPARAM wParam, LPARAM lParam)
{
    // 处理自定义消息
    return 0;
}

この方法により、MFCアプリケーションで簡単にメッセージをメインウィンドウに送信し、メインウィンドウクラスでこれらのメッセージを処理できます。

bannerAds