MFC工控项目实例之五CFile类读写系统参数

2024-06-16 13:44

本文主要是介绍MFC工控项目实例之五CFile类读写系统参数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

承接专栏《MFC工控项目实例之四在调试目录下创建指定文件夹》
实时保存输入的iPlotX坐标轴最小值、最大值到CFG.PAR文件,打开界面从CFG.PAR文件中实时读取保存的最小值、最大值在编辑框中显示。
1、SEAL_PRESSURE.h中添加代码

class CSEAL_PRESSUREApp : public CWinApp
{
public:...CString m_CFGFileName;void LoadCFGFile(void);void SaveCFGFile(void);...
}

2、SEAL_PRESSURE.cpp中添加代码

CSEAL_PRESSUREApp::CSEAL_PRESSUREApp()
{TCHAR exeFullPath[MAX_PATH];GetModuleFileName(NULL,exeFullPath,MAX_PATH);m_Path = exeFullPath;for(int i = m_Path.GetLength() - 1; i > 0 ; i --){if(m_Path.GetAt(i) == '\\')break;}SetCurrentDirectory(m_Path);m_Path = m_Path.Left(i);m_CFGFileName = m_Path + "\\CFG.PAR";
}	BOOL CSEAL_PRESSUREApp::InitInstance()
{...LoadCFGFile();   CSEAL_PRESSUREDlg dlg;m_pMainWnd = &dlg;int nResponse = dlg.DoModal();...SaveCFGFile();return FALSE;
}void CSEAL_PRESSUREApp::LoadCFGFile()
{CFile file;if(file.Open(m_CFGFileName,CFile::modeRead)){if(!file.Read(&m_sys_data,sizeof(m_sys_data))){memset(&m_sys_data,0,sizeof(m_sys_data));}file.Close();}else{memset(&m_sys_data,0,sizeof(m_sys_data));}
}void CSEAL_PRESSUREApp::SaveCFGFile()
{CFile file;if(file.Open(m_CFGFileName,CFile::modeCreate|CFile::modeWrite)){file.Write(&m_sys_data,sizeof(m_sys_data));file.Close();}
}

3、SYS_DATA.cpp中添加代码

SYS_DATA::SYS_DATA(CWnd* pParent /*=NULL*/): CDialog(SYS_DATA::IDD, pParent)
{//{{AFX_DATA_INIT(SYS_DATA)m_fMaxTime = 0.0;m_fMaxPressure = 0.0;m_fMinPressure = 0.0;//}}AFX_DATA_INITm_fMaxTime = theApp.m_sys_data.m_fMaxTime;m_fMinPressure = theApp.m_sys_data.m_fMinPressure;m_fMaxPressure = theApp.m_sys_data.m_fMaxPressure;
}

运行程序
在这里插入图片描述

这篇关于MFC工控项目实例之五CFile类读写系统参数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1066611

相关文章

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

Linux系统中的firewall-offline-cmd详解(收藏版)

《Linux系统中的firewall-offline-cmd详解(收藏版)》firewall-offline-cmd是firewalld的一个命令行工具,专门设计用于在没有运行firewalld服务的... 目录主要用途基本语法选项1. 状态管理2. 区域管理3. 服务管理4. 端口管理5. ICMP 阻断

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解

java String.join()方法实例详解

《javaString.join()方法实例详解》String.join()是Java提供的一个实用方法,用于将多个字符串按照指定的分隔符连接成一个字符串,这一方法是Java8中引入的,极大地简化了... 目录bVARxMJava String.join() 方法详解1. 方法定义2. 基本用法2.1 拼接

springboot项目中使用JOSN解析库的方法

《springboot项目中使用JOSN解析库的方法》JSON,全程是JavaScriptObjectNotation,是一种轻量级的数据交换格式,本文给大家介绍springboot项目中使用JOSN... 目录一、jsON解析简介二、Spring Boot项目中使用JSON解析1、pom.XML文件引入依

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv