MFC(五)菜单栏和工具栏

news2024/9/21 4:22:04

这篇文章我们来完成菜单设计和工具栏设计

菜单设计

1.点开资源视图==>Menu==>IDR_MAINFRAME

通过IDR_MAINFRAME我们可以编辑该资源定义,包括主菜单、其他菜单、工具栏等内容,IDR_MAINFRAME即为默认的主窗口的资源标识符

2.右键相应菜单==>新插入,依次插入画直线、画矩形、画椭圆、测试菜单、画笔

3.右键新插入的菜单,添加事件处理程序,类列表可选Cmainframe,CMFCpaintview, CMFCpaintdoc, CMFCpaintapp,  消息类型全选择COMMAND,我们在这四个类列表全部添加一个处理程序,并且每个程序添加如下代码

TRACE("%s(%d):%s\r\n", __FILE__, __LINE__, __FUNCTION__);

FILE表示文件路径,LINE表示行数,FUNCTION表示函数名

4.运行后发现,点击MFC窗口的相应菜单,即使生成了四个事件处理程序,但是只会输出一个TREACE,即只会运行一个处理程序,一个个调试后,可以得到以下结论

响应菜单命令顺序:view>doc>框架>app,

也就是说假如同时给新插入的菜单,添加CMFCpaintview, CMFCpaintdoc类列表,只有view列表才会响应鼠标对菜单的点击。即点一下新插入的菜单,只会有一个程序响应

工具栏设计

 1.选择资源视图,选择TOOLBAR,选择IDR_MAINFRAME和IDR_MAINFRAME_256,一个是旧版一个是新版,

2.在VS工具栏里选择,画笔、

 然后在这里面画上几条直线

 这样在工具栏就有了这样的图标

Cobject

Cobject是MFC所有类的父类,顶级父类,它提供一些公共服务

1.支持序列化

什么是序列化?比如一个类中有两个整型成员变量,X和Y,序列化就是将XY变成一行数据,即8字节的数据,或者把XY打印为某种固定格式文本,X 值,Y 值,或者把类的内存全部复制过来,为什么要序列化,如果变成一行数据,就能够有格式的传输,因为有些协议只能一个一个i字节的传输,也可以进行网络数据传输,比如JSON格式

2.支持运行时提供类信息

提供类的父类信息及子类信息,方便进行调试,打印类的更多信息,如getbaseclass函数和get-thisclass函数

3.支持动态创建及类的诊断输出

什么是动态创建,比如一个说明窗口,我们没有点开说明,它就不会创建这个窗口,直到我们自己点开它,即动态创建,根据用户需求来进行创建,类的诊断输出是一种调试工具,如ASSERT-VALID函数,dump函数

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/594624.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构 --- 红黑树

红黑树也是一种自平衡的二叉搜索树,和AVL树比较,插入和删除时,旋转的次数更少。 红黑树的特性: 所有节点都有颜色:红色或者黑色所有null均视为黑色红色节点不能相邻根节点是黑色从根节点到任意一个叶子节点&#xff…

5分钟带你了解,SAS硬盘和SATA硬盘的区别?

一、SAS和SATA的关系 SAS的接口技术可以向下兼容SATA。具体来说,二者的兼容性主要体现在物理层和协议层的兼容。 在物理层,SAS接口和SATA接口完全兼容,SATA硬盘可以直接使用在SAS的环境中,从接口标准上而言,SATA是SAS的…

接口隔离原则:接口里的方法,你都用得到吗?

文章目录 前言接口隔离原则1、角色的合理划分2、定制服务3、接口污染 胖接口减肥总结 前言 在前面几篇文章中中,我们讲的设计原则基本上都是关于如何设计一个类。SRP 告诉我们,一个类的变化来源应该是单一的;OCP 说,不要随意修改…

Fiddler抓包工具之fiddler设置断点和简单的并发测试

断点有两种方式: 1、全局断点 2、局部断点 全局断点 全局断点的特点是:不能针对一个请求,是给所有抓到的请求打断点 全局断点如何设置: 1、快速设置断点:直接点击底部状态栏断点处 ;点击第一下是请求…

比赛记录:Educational Codeforces Round 149 (Rated for Div. 2) A~D

传送门:CF 前提提要:这场狠狠的掉分.C题刚开始少了一个特判,导致自己对自己的构造方法产生了疑问,然后就一直在做无用思考,后来交的时候排名就贼后面,然后D题的题面简直稀烂(虽然D题看懂之后极其简单…),赛时根本看不懂D题意,最终rating掉完.不亏是教育场,被狠狠的教育了 A题…

Web的基本漏洞--命令执行漏洞

目录 一、命令执行漏洞 1.命令执行漏洞的原理 2.命令执行漏洞分类 3.命令执行漏洞的危害 4.命令执行漏洞的防范措施 5.命令执行漏洞的绕过 一、命令执行漏洞 命令执行漏洞是指攻击者可以随意执行系统命令。它属于高危漏洞之一,也属于代码执行的范畴。命令执行…

内置工具横向移动

IPCSchtasks IPC: IPC$是共享"命令管道"的资源,它是为了让进程通信而开放的命名管道,连接双方可以建立安全的通道并以此通道进行加密数据交换,从而实现对远程计算机的访问。 利用条件: 1、开放139、445 2、目标开启…

Node.js V10.24.1 安装步骤(node、cnpm、yarn、vue)

一、下载node.js 下载地址:Download | Node.js 要下载历史低版本请点击“Previous Releases” Previous Releases 本文章以V10.24.1为例 ,下载64位msi 二、安装 下载完成后,一直点击Next直到安装完成,可以自己修改安装位置。…

09.二叉树

09.二叉树 1.树型结构 1.1概念 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点&…

收到字节offer,我却拒绝了...

前言: 大四快毕业了,在等待读研的期间无事可做,所以打算暑期找个实习。 忠告: 本人投了字节某测试岗,看到要求是测开的要求(科班出身需要熟悉一种语言),就以为面完发技术岗的offe…

note注解

元注解 注解在注解上面的注解称为元注解。主要有以下五种。 Retention 表明注解存活时间 Documented 将注解元素放到Javadoc文档中 Target 注解可以使用到的地方 在ElementType[]中主要有以下几种类型 TYPE:类型(比如类、注解、枚举) FIELD&…

Refresh解析

目录 后置处理器PostProcessor PostProcessor的种类 Aware 事件监听模式 Spring容器的刷新逻辑 ApplicationContext refresh的流程概述 1---prepareRefresh 2---obtainFreshBeanFactory 3---prepareBeanFactory 4---postProcessBeanFactory 5---invokeBeanFactoryPo…

【正点原子STM32连载】 第二十一章 通用定时器实验 摘自【正点原子】STM32F103 战舰开发指南V1.2

1)实验平台:正点原子stm32f103战舰开发板V4 2)平台购买地址:https://detail.tmall.com/item.htm?id609294757420 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html 第二十…

海康萤石摄像头本地局域网拉流保存

海康萤石的视频cp1型号,获取局域网的视频流:rtsp 拉流方法 首先需要在软件中打开rtsp开关,然后使用nmap工具测试下摄像头开放的端口号,一定会有一个554端口开放 $ nmap 192.168.0.105 PORT STATE SERVICE 554/tcp open r…

什么是Flink CDC,以及如何使用

什么是Flink CDC,以及如何使用 CDC介绍Flink CDC适用于场景?Flink CDC 的简单用例数据库配置创建数据库和相应的表开启mysql数据库bin-log日志1.如果是服务器2.如果在Windows使用小皮 搭建Flink CDC java环境添加maven相关pom构建Sinkmain配置运行 操作数…

盘点中国开发的有影响力的编程技术产品,道阻且长,行则将至

计算机诞生之后,程序员需要给计算机发送指令,能够准确地定义计算机所需要使用的数据,并精确地定义在不同情况下所应当采取的行动。计算机需要能够识别并执行指令。这个“指令”就是我们今天的“编程语言”,一种计算机和人都能识别…

【十】设计模式~~~结构型模式~~~享元模式(Java)

【学习难度:★★★★☆,使用频率:★☆☆☆☆】 5.1. 模式动机 面向对象技术可以很好地解决一些灵活性或可扩展性问题,但在很多情况下需要在系统中增加类和对象的个数。当对象数量太多时,将导致运行代价过高&#xff0…

路径规划算法:基于自私羊群优化的路径规划算法- 附代码

路径规划算法:基于自私羊群优化的路径规划算法- 附代码 文章目录 路径规划算法:基于自私羊群优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要:本文主要介绍利用智能优化…

图解max{X,Y}和min{X,Y}并求相关概率

图解max{X,Y}和min{X,Y}并求相关概率 对max{X,Y}或min{X,Y}进行分解再求解 P ( m a x { X , Y } ≥ c ) P [ ( X ≥ c ) ∪ ( Y ≥ c ) ] P ( m a x { X , Y } ≤ c ) P [ ( X ≤ c ) ∩ ( Y ≤ c ) ] P ( m i n { X , Y } ≥ c ) P [ ( X ≥ c ) ∩ ( Y ≥ c ) ] P ( m i…

2022年12月1日郑州大学新闻与传播学院副院长博导郑*侠—社科申报注意事项

郑老师(1项重点社科,2项青年社科), 一、选题 随时关注 最新国家层面信息:二十大报告,重要文件,重点项目信息 选题方向:问题导向 时代问题—学术问题—现实问题 题目命名&#xf…