MFC添加窗体菜单栏和消息响应

⌚Time: 2023-11-25 19:37:51

👨‍💻Author: Jack Ge

在资源视图右键,添加资源,选择Menu,新建

添加的菜单在资源菜单的Menu目录下

双击直接编辑输入菜单

之后在要添加菜单的窗体的属性Menu里面填写菜单的ID就可以了

如何给菜单添加点击响应?

OnCommand是MFC中的一个消息处理函数,用于处理在窗口或控件被激活时发出的WM_COMMAND消息。


BOOL OnCommand(WPARAM wParam, LPARAM lParam);

该函数有两个参数:WPARAM wParam和LPARAM lParam。

wParam 是一个标识符,表示用户点击的按钮或菜单项的ID。可以使用它来确定要执行哪个操作。

lParam 是一个HWND类型的句柄,用于指向正在发送消息的控件。

为窗体添加OnCommand函数,可以到类视图,选择窗体类,在重写属性里面找到OnCommand,并添加编辑

在OnCommand函数中,可以使用switch语句来确定wParam参数的值,并执行相应的操作。例如,如果wParam参数是一个“关于”菜单的ID,那么可以在OnCommand函数中添加相关的代码。


BOOL CPiDlg::OnCommand(WPARAM wParam, LPARAM lParam)

{

    // TODO:  在此添加专用代码和/或调用基类

    switch (LOWORD(wParam))

    {

    case ID_32774:

        MessageBox(L"你点击了关于菜单",L"提示");

        break;

    default:

        break;

    }

    return CDialogEx::OnCommand(wParam, lParam);

}


ID_32774是关于菜单的ID,关于菜单ID,可以在菜单属性里面找到和修改

结果