当前位置: 首页 > news >正文

【mfc/VS2022】计图实验:绘图工具设计知识笔记3

实现类对串行化的支持

如果要用CArchive类保存对象的话,那么这个对象的类必须支持串行化。一个可串行化的类通常有一个Serialize成员函数。要想使一个类可串行化,要经历以下5个步骤:
1、从CObject派生类
2、重写Serialize成员函数
3、使用DECLARE_SERIAL宏:
DECLARE_SERIAL( class_name )参数就是想要成为可串行化类的类名。
4、定义不带参数的构造函数
5、为类在实现文件中使用IMPLEMENT_SERIAL宏:
IMPLEMENT_SERIAL( class_name, base_class_name, wSchema )
第一个参数是类的名称;第二个参数是基类的名称;第三个参数是版本号

详见:

利用CObArray类对串行化的支持保存和加载 数据

 简洁版:只包含五步的内容

消息框messagebox()详细介绍及使用方法

 

简介:

     MessageBox指的是显示一个模态对话框,其中包含一个系统图标、 一组按钮和一个简短的特定于应用程序消息,如状态或错误的信息。消息框中返回一个整数值,该值指示用户单击了哪个按钮。

语法:

int MessageBoxW([in, optional] HWND    hWnd,[in, optional] LPCWSTR lpText,[in, optional] LPCWSTR lpCaption,[in]           UINT    uType
);

参数:

hWnd:

此参数代表消息框拥有的窗口。如果为NULL,则消息框没有拥有窗口。

lpText:

消息框的内容。

lpCaption:

消息框的标题。

uType:

指定一个决定对话框的内容和行为的位标志集。此参数可以为下列标志组中标志的组合。指定下列标志中的一个来显示消息框中的按钮以及图标。

详见参考:

参考1

参考2

 底部状态栏的设置 

之前的博客说了设置状态栏的文本,但不够具体。

首先,要把CMainfram类的 wndStatusBar改成public,对应cpp文件里有一个indicators数组

575e5d04da634da1bcd1896297acb167.png

 

ID_INDICATOR_MOUSE_POS是后面添加进去的,在string table里可以定义这个id,修改标题,然后在上面的数组里面加入这个id。

5fbb3c6efc44423688380f26213616b3.png

 

wndStatusBar.SetPaneText(2, str);这个2指的就是indicators数组的下标。

 

CStatusBar 类https://learn.microsoft.com/zh-cn/cpp/mfc/reference/cstatusbar-class?view=msvc-170

 

http://www.lryc.cn/news/213446.html

相关文章:

  • Leetcode—1488.避免洪水泛滥【中等】
  • CSS与基本选择器
  • 回归算法|长短期记忆网络LSTM及其优化实现
  • 小米电视播放win10视频 win10共享问题
  • uniApp开发注意要点提炼-xyphf
  • DHorse改用fabric8的SDK与k8s集群交互
  • 如何在阿里云国际站服务器上添加IP白名单?
  • GPT实战系列-ChatGLM2模型的微调训练参数解读
  • RabbitMQ入门到实战教程,消息队列实战,改造配置MQ
  • phar反序列化学习
  • 十年回望 -- JAVA
  • Linux 环境下 安装 Elasticsearch 7.13.2
  • 心理咨询预约小程序
  • 常用排序算法的理解
  • Python小程序 - 文件解析
  • .mxdown-V-XXXXXXXX勒索病毒的最新威胁:如何恢复您的数据?
  • audio 标签动态src 且src是http无法播放问题
  • Leetcode—485.最大连续1的个数【中等】明天修改
  • JavaWeb 怎么在servlet向页面输出Html元素?
  • Spring及SpringBoot中AOP的使用
  • cmake多目录构建初步成功
  • idea插件(一)-- SequenceDiagram(UML自动生成工具)
  • STM32 APP跳转到Bootloader
  • [RISC-V]verilog
  • Log4j-tag丢失
  • 代码随想录算法训练营第五十六天|1143.最长公共子序列 ● 1035.不相交的线 ● 53. 最大子序和 动态规划
  • 虚拟机和Windows的文件传输
  • leetcode分类刷题:二叉树(八、二叉搜索树特有的自顶向下遍历)
  • Vue 插槽 组件插入不固定内容
  • webpack打包时配置环境变量