MFC应用的菜单,工具栏和状态栏(vs2019)

继续MFC的应用学习记录;
这次是菜单,工具栏,状态栏这三个功能实现;
第一步还是创建基于单文档的应用程序;
创建好后,打开资源视图;
在这里插入图片描述

功能1:菜单
在资源视图中找到Menu,打开ID_MAINFRAME;
在这里插入图片描述

在左侧呢,自己尝试一下就知道怎么添加新选项了;
在这里插入图片描述
我这里添加了三个选项;运行后菜单里面就有一个选项,鼠标放在上面就会出现这三个人物选项;
但是我们如果想要让这三个选项有点击效果,怎么做呢;
在这里插入图片描述

比如这个赵云选项,我们右键,选择添加事件处理程序;
在这里插入图片描述

类列表选择后缀为View的选项,名字随意,点击确定,进入函数里面;
添加如下代码:

void CMenuView::On32771()
{
	// TODO: 在此添加命令处理程序代码
	MessageBox(TEXT("赵云,男,蜀国"));
}

这样我们运行的话,在选项里面点击赵云,就会出现这样的效果;
在这里插入图片描述
这就是菜单的基本使用,很简单吧,剩下的选项就不举例子了;
在这里插入图片描述

功能2:工具栏
工具栏呢,就是菜单下面的那一行,我们怎么做出来效果呢?
还是在资源视图中,找到Toolbar文件夹里面的IDR_MAINFRAME;双击;
在这里插入图片描述

然后看左边的主界面,还是自己试试,在最右侧的选项按钮里面,画点东西(画笔的选项在上方);
在这里插入图片描述

我给最右边的空白选项画成了这样,然后我们希望这个按钮有效果,为了方便我们就实现出刚才赵云的那个功能;
在这里插入图片描述
我们回到Menu找到赵云这个按钮的ID;
在这里插入图片描述
把这个ID复制下来;
然后复制到刚才你画出来的按钮的ID上;
这样运行之后,点击那个按钮就会出现以下效果;
在这里插入图片描述
这就是工具栏的使用方法,也很简单吧;
在这里插入图片描述

功能3:状态栏;
有时候我们希望鼠标的右键会出现一些效果,所以我们需要自己去写这个工能;
那要怎么实现呢;
首先,我们在Menu里面选择添加资源Menu;
然后对你新加的菜单进行编辑;
在这里插入图片描述
我的是这样;
同理给这个按钮添加消息处理函数;
我给蜀国这个按钮添加了这样的函数;

void CMenuView::On32775()
{
	// TODO: 在此添加命令处理程序代码
	MessageBox(TEXT("刘备,关羽,张飞"));
}

然后剩下的两个也添加上;
之后运行是不好使的;
我们要在类视图中,找到C+id+View中下面的消息选项,再找WM_CONTEXTMENU选择
ADD然后进入函数里面;
在这里插入图片描述

加入下面的代码;
可能会给你ID画红线,不用管,是因为VS没反应过来可以运行的;

void CMenuView::OnContextMenu(CWnd* /*pWnd*/, CPoint point)
{
	// TODO: 在此处添加消息处理程序代码
	CMenu menu;
	menu.LoadMenu(IDR_MENU1);
	menu.GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, this);

}

然后运行,鼠标右键,就会出现三个选项了,并且有各自的功能了;
这个就是鼠标右键状态栏的实现;
稍稍有那么一丢丢麻烦不过也还好;
当然这些都是最最最基本的使用;
那就结束了;
恩!
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_46726346/article/details/106728825
今日推荐