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

MFC工控项目实例三十二模拟量校正值添加修改删除

用两个列表控件实现三十二模拟量校正值添加、修改、删除。

相关代码

void SenSet::OnSelchangeList1() //修改
{m_bAdd_2.EnableWindow(true);m_bParameter_2.EnableWindow(true);m_bDel_2.EnableWindow(false);nSel =m_IDC_LIST1.GetCurSel();m_IDC_LIST1.GetText(nSel,nSel_str);CString str;str.Format("%d",nSel);CString str6[16],str7[16],str8[16],str9[16];GetPrivateProfileString("A/D设置",nSel_str+"零点电压",NULL,str6[16].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",nSel_str+"零点数值",NULL,str7[16].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",nSel_str+"量程电压",NULL,str8[16].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",nSel_str+"量程数值",NULL,str9[16].GetBuffer(20),20,theApp.strFilePath);m_IDC_LIST2.DeleteAllItems();m_IDC_LIST2.InsertItem(0, _T("1"));   m_IDC_LIST2.SetItemText(0, 1,_T(str6[16]));  SetDlgItemText(IDC_EDIT1,_T(str6[16]));m_IDC_LIST2.SetItemText(0, 2,str7[16]);SetDlgItemText(IDC_EDIT2,_T(str7[16]));m_IDC_LIST2.InsertItem(1, _T("2"));   m_IDC_LIST2.SetItemText(1, 1,str8[16]);SetDlgItemText(IDC_EDIT4,_T(str8[16]));m_IDC_LIST2.SetItemText(1, 2,str9[16]);SetDlgItemText(IDC_EDIT5,_T(str9[16]));if (str6[16]!="" && str7[16]!="" && str8[16]!="" && str9[16]!=""){SetDlgItemText(IDC_BUTTON1,"修改");}else {SetDlgItemText(IDC_BUTTON1,"添加");}
}void SenSet::OnButton1() //添加
{CString str1,str2,str4,str5;CString str6[16],str7[16],str8[16],str9[16];GetDlgItemText(IDC_EDIT1,str1);GetDlgItemText(IDC_EDIT2,str2);GetDlgItemText(IDC_EDIT4,str4);GetDlgItemText(IDC_EDIT5,str5);WritePrivateProfileString("A/D设置",nSel_str+"零点电压",str1,theApp.strFilePath);WritePrivateProfileString("A/D设置",nSel_str+"零点数值",str2,theApp.strFilePath);WritePrivateProfileString("A/D设置",nSel_str+"量程电压",str4,theApp.strFilePath);WritePrivateProfileString("A/D设置",nSel_str+"量程数值",str5,theApp.strFilePath);GetPrivateProfileString("A/D设置",nSel_str+"零点电压",NULL,str6[16].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",nSel_str+"零点数值",NULL,str7[16].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",nSel_str+"量程电压",NULL,str8[16].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",nSel_str+"量程数值",NULL,str9[16].GetBuffer(20),20,theApp.strFilePath);m_IDC_LIST2.DeleteAllItems();m_IDC_LIST2.InsertItem(0, _T("1"));   m_IDC_LIST2.SetItemText(0, 1,_T(str6[16]));  m_IDC_LIST2.SetItemText(0, 2,str7[16]); 
//	m_IDC_LIST2.DeleteAllItems();m_IDC_LIST2.InsertItem(1, _T("2"));   m_IDC_LIST2.SetItemText(1, 1,str8[16]);  m_IDC_LIST2.SetItemText(1, 2,str9[16]);  for(int i=0;i<theApp.COMB_Data_AD_Number_1;i++){GetPrivateProfileString("AD输入",theApp.COMB_Data_AD_1[i],NULL,theApp.b_str_AD_1[i].GetBuffer(20),20,theApp.strFilePath);	theApp.AD_1[i]=_ttoi(theApp.b_str_AD_1[i]);if (theApp.b_str_AD_1[i]!="-1" ){GetPrivateProfileString("A/D设置",theApp.COMB_Data_AD_1[i]+"零点电压",NULL,theApp.AD_SET_ZERO_VLO[theApp.AD_1[i]].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",theApp.COMB_Data_AD_1[i]+"零点数值",NULL,theApp.AD_SET_ZERO_NUM[theApp.AD_1[i]].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",theApp.COMB_Data_AD_1[i]+"量程电压",NULL,theApp.AD_SET_RAN_VLO[theApp.AD_1[i]].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",theApp.COMB_Data_AD_1[i]+"量程数值",NULL,theApp.AD_SET_RAN_NUM[theApp.AD_1[i]].GetBuffer(20),20,theApp.strFilePath);
//	SetDlgItemText(IDC_STATIC99,theApp.AD_SET_RAN_NUM[theApp.AD_1[15]]);theApp.flo_AD_SET_ZERO_VLO[i]= (float)atof(theApp.AD_SET_ZERO_VLO[theApp.AD_1[i]]);theApp.flo_AD_SET_ZERO_NUM[i]= (float)atof(theApp.AD_SET_ZERO_NUM[theApp.AD_1[i]]);theApp.flo_AD_SET_RAN_VLO[i]= (float)atof(theApp.AD_SET_RAN_VLO[theApp.AD_1[i]]);theApp.flo_AD_SET_RAN_NUM[i]= (float)atof(theApp.AD_SET_RAN_VLO[theApp.AD_1[i]]);}}
}void SenSet::OnButton2() //删除
{int nIndex = m_IDC_LIST2.GetSelectionMark();CString str;str.Format("%d",nIndex);if (nIndex==0){WritePrivateProfileString("A/D设置",nSel_str+"零点电压",NULL,theApp.strFilePath);WritePrivateProfileString("A/D设置",nSel_str+"零点数值",NULL,theApp.strFilePath);// SetDlgItemText(IDC_STATIC99,"1");  }if (nIndex==1){WritePrivateProfileString("A/D设置",nSel_str+"量程电压","",theApp.strFilePath);WritePrivateProfileString("A/D设置",nSel_str+"量程数值","",theApp.strFilePath);}CString str6[16],str7[16],str8[16],str9[16];GetPrivateProfileString("A/D设置",nSel_str+"零点电压",NULL,str6[16].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",nSel_str+"零点数值",NULL,str7[16].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",nSel_str+"量程电压",NULL,str8[16].GetBuffer(20),20,theApp.strFilePath);GetPrivateProfileString("A/D设置",nSel_str+"量程数值",NULL,str9[16].GetBuffer(20),20,theApp.strFilePath);m_IDC_LIST2.DeleteAllItems();m_IDC_LIST2.InsertItem(0, _T("1"));   m_IDC_LIST2.SetItemText(0, 1,_T(str6[16]));  SetDlgItemText(IDC_EDIT1,_T(str6[16]));m_IDC_LIST2.SetItemText(0, 2,str7[16]);SetDlgItemText(IDC_EDIT2,_T(str7[16]));m_IDC_LIST2.InsertItem(1, _T("2"));   m_IDC_LIST2.SetItemText(1, 1,str8[16]);SetDlgItemText(IDC_EDIT4,_T(str8[16]));m_IDC_LIST2.SetItemText(1, 2,str9[16]);SetDlgItemText(IDC_EDIT5,_T(str9[16]));	  
}

相关文章:

MFC工控项目实例三十二模拟量校正值添加修改删除

用两个列表控件实现三十二模拟量校正值添加、修改、删除。 相关代码 void SenSet::OnSelchangeList1() //修改 {m_bAdd_2.EnableWindow(true);m_bParameter_2.EnableWindow(true);m_bDel_2.EnableWindow(false);nSel m_IDC_LIST1.GetCurSel();m_IDC_LIST1.GetText(nSel,nSel_…...

力扣第 60 题 “第 k 个排列”

题目描述 给定整数 n 和 k&#xff0c;返回由 1 到 n 组成的排列中第 k 个排列。 所有排列按字典序排列。1 ≤ n ≤ 9&#xff0c;1 ≤ k ≤ n!。 解题思路 要快速找到第 k 个排列&#xff0c;可以利用数学方法而不是生成所有排列&#xff1a; 1. 知识点&#xff1a;阶乘与…...

国际环境和背景下的云计算领域

前言 在当前国际环境和背景下&#xff0c;云计算领域呈现出复杂多变的局面&#xff0c;其发展深受技术创新、地缘政治、全球经济以及监管政策的影响。以下从技术趋势、市场竞争、地缘政治和监管环境四个方面详细解析云计算领域的现状。 一、技术趋势&#xff1a;多云与边缘计算…...

logstash 解析数组格式json数据:split, json

1&#xff0c;需求说明 原始数据格式&#xff1a; 1条 &#xff08;2*2&#xff09;》4个指标数据 [{"app":"aa","url":"www.1.com","metrics":[{"name":"cpu","value":11},{"name&quo…...

Linux的开发工具(二)

1.vim的基本操作 正常模式到插入模式 输入a 输入i 输入o 示例 输入iao下面的就会变成INSERT模式 插入模式到正常模式 按Esc键 正常模式到低行模式 shift&#xff1b; &#xff1a;w保存当前文件 &#xff1a;wq保存并退出 &#xff1a;q&#xff01;强制退出 2.vi…...

Bokeh实现大规模数据可视化的最佳实践

目录 引言 一、Bokeh简介 二、安装Bokeh 三、数据准备 四、性能优化 五、创建图表 六、添加交互功能 七、应用案例 八、高级技巧 九、总结 引言 在数据科学领域,数据可视化是一个至关重要的环节。通过可视化,我们可以直观地理解数据的特征和趋势,为数据分析和决策…...

Oracle表碎片整理与优化

Oracle数据库中的表碎片整理与优化是一个重要的维护任务&#xff0c;可以显著提高数据库的性能。表碎片通常是由于频繁的插入、删除和更新操作导致的。以下是一些常见的方法和步骤&#xff0c;帮助你进行表碎片整理与优化。 1. 识别碎片表 首先&#xff0c;需要识别哪些表存在…...

【华为云函数工作流】python的函数中如何获取请求链接中带的参数

背景 通过调用函数的url&#xff0c;将参数传递给函数执行&#xff0c;函数里如何获取这个参数 过程 下一个简单的demo如下 参考这个链接https://support.huaweicloud.com/devg-functiongraph/functiongraph_02_0420.html写一个demo&#xff0c;这个是百度视频云获取token的…...

最新Kali安装详细版教程(附安装包,傻瓜式安装教程)

本文主要详细介绍 kali 的安装过程&#xff0c;以及安装完成后的基本设置&#xff0c;比如安装增强工具&#xff0c;安装中文输入法以及更新升级等操作。 文章目录 实验环境准备工作步骤说明安装虚拟机安装 Kali安装增强工具安装中文输入法更新升级 实验环境 VMware &#x…...

【unity小技巧】unity最完美的CharacterController 3d角色控制器,实现移动、跳跃、下蹲、奔跑、上下坡、物理碰撞效果,复制粘贴即用

最终效果 文章目录 最终效果前言为什么使用CharacterControllerSimpleMove和Move如何选择&#xff1f;1. SimpleMove2. Move 配置CharacterController参数控制相机移动跳跃方式一方式二 下蹲处理下坡抖动问题实现奔跑和不同移速控制完整代码补充&#xff0c;简单版本 实现物理碰…...

66 mysql 的 表自增长锁

前言 mysql 的表锁之 AUTO_INC, 是我们自增长的时候做并发控制的锁 主要是用于 自增长生成新的 id 的时候的控制 在前面的文档中, 我们又看到 mysql 这边自增长的处理的相关的大概脉络 但是 对于一些 并发控制的细节, 我们当时 应该是直接忽略掉了 我们这里就来看一下…...

神经网络问题之一:梯度消失(Vanishing Gradient)

梯度消失&#xff08;Vanishing Gradient&#xff09;问题是深度神经网络训练中的一个关键问题&#xff0c;它主要发生在反向传播过程中&#xff0c;导致靠近输入层的权重更新变得非常缓慢甚至几乎停滞&#xff0c;严重影响网络的训练效果和性能。 图1 在深度神经网络中容易出现…...

企业网页设计的安全与数据保护

企业网页设计不仅要考虑美观和功能性&#xff0c;安全与数据保护也是重中之重。在这个信息爆炸的时代&#xff0c;用户的数据隐私和安全问题日益凸显&#xff0c;企业必须采取多种措施来保障用户的信息安全。 首先&#xff0c;**SSL加密**是基础中的基础。通过使用SSL证书&…...

对 TypeScript 中类是怎么理解的?都有哪些应用场景?

在 TypeScript 中&#xff0c;类&#xff08;class&#xff09;是面向对象编程的核心构造之一&#xff0c;它允许你创建具有特定属性和方法的对象模板。TypeScript 的类概念和 JavaScript 中的类基本相同&#xff0c;但它提供了额外的类型检查和静态类型系统&#xff0c;从而增…...

2024“龙信杯“电子数据取证竞赛-服务器取证题目Writeup

服务器检材-分析 前置 提示&#xff1a;该服务器做了登录密码校验配置&#xff0c;如果没有拿到服务器的密码而直接仿真服务器&#xff0c;输入密码进入系统后&#xff0c;服务器会将部分数据给自动删除 前提&#xff1a;无 因为我们仿真进入服务器会自动删除文件&#xff0…...

Label-studio-ml-backend 和YOLOV8 YOLO11自动化标注,目标检测,实例分割,图像分类,关键点估计,视频跟踪

这里写目录标题 1.目标检测 Detection2.实例分割 segment3.图像分类 classify4.关键点估计 Keypoint detection5.视频帧检测 video detect6.视频帧分类 video classify7.旋转目标检测 obb detect8.替换yolo11模型 给我点个赞吧&#xff0c;谢谢了附录coco80类名称 笔记本 华为m…...

Elasticsearch Windows版的安装及启动

一、下载 https://www.elastic.co/cn/downloads/past-releases#elasticsearch 如下图 选择版本 我用的是7.17.5 你换成你需要的版本 二 使用 1.解压 解压完如图 2.启动 进入 bin 文件目录&#xff0c;双击运行 elasticsearch.bat 文件启动 ES 服务 出现报错 Cause…...

解决 VMware 嵌套虚拟化提示 关闭“侧通道缓解“

最近给电脑做了新版的 Windows 11 LTSC操作系统&#xff0c;在启动VMware Workstation时&#xff0c;提示"此虚拟机已启用侧通道缓解&#xff0c;可增强安全性&#xff0c;但也会降低性能"&#xff0c;但是我没有启用 Hyper-V 相关的任何功能以及 WSL&#xff0c; 从…...

基于Redis实现的手机短信登入功能

目录 开发准备 注册阿里短信服务 依赖坐标 阿里短信 依赖 mybatis-plus 依赖 redis 依赖 配置文件 导入数据库表 短信发送工具类 生成随机验证码的工具类 校验合法手机号的工具类 ThreadLocal 线程工具类 消息工具类 基于 session 的短信登录的问题 开发教程 Redis 结构设计 …...

C# NetworkStream用法

一、注意事项&#xff1a; NetworkStream 是稳定的&#xff0c;面向连接的&#xff0c;所以它只适合 TCP 协议的环境下工作所以一旦在 UDP环境中&#xff0c;虽然编译不会报错&#xff0c;但是会跳出异常。如果用构造产生NetworkStream的实例&#xff0c;则必须使用连接的Socke…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

tomcat入门

1 tomcat 是什么 apache开发的web服务器可以为java web程序提供运行环境tomcat是一款高效&#xff0c;稳定&#xff0c;易于使用的web服务器tomcathttp服务器Servlet服务器 2 tomcat 目录介绍 -bin #存放tomcat的脚本 -conf #存放tomcat的配置文件 ---catalina.policy #to…...

elementUI点击浏览table所选行数据查看文档

项目场景&#xff1a; table按照要求特定的数据变成按钮可以点击 解决方案&#xff1a; <el-table-columnprop"mlname"label"名称"align"center"width"180"><template slot-scope"scope"><el-buttonv-if&qu…...

Docker拉取MySQL后数据库连接失败的解决方案

在使用Docker部署MySQL时&#xff0c;拉取并启动容器后&#xff0c;有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致&#xff0c;包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因&#xff0c;并提供解决方案。 一、确认MySQL容器的运行状态 …...

深度剖析 DeepSeek 开源模型部署与应用:策略、权衡与未来走向

在人工智能技术呈指数级发展的当下&#xff0c;大模型已然成为推动各行业变革的核心驱动力。DeepSeek 开源模型以其卓越的性能和灵活的开源特性&#xff0c;吸引了众多企业与开发者的目光。如何高效且合理地部署与运用 DeepSeek 模型&#xff0c;成为释放其巨大潜力的关键所在&…...

C++实现分布式网络通信框架RPC(2)——rpc发布端

有了上篇文章的项目的基本知识的了解&#xff0c;现在我们就开始构建项目。 目录 一、构建工程目录 二、本地服务发布成RPC服务 2.1理解RPC发布 2.2实现 三、Mprpc框架的基础类设计 3.1框架的初始化类 MprpcApplication 代码实现 3.2读取配置文件类 MprpcConfig 代码实现…...

基于江科大stm32屏幕驱动,实现OLED多级菜单(动画效果),结构体链表实现(独创源码)

引言 在嵌入式系统中&#xff0c;用户界面的设计往往直接影响到用户体验。本文将以STM32微控制器和OLED显示屏为例&#xff0c;介绍如何实现一个多级菜单系统。该系统支持用户通过按键导航菜单&#xff0c;执行相应操作&#xff0c;并提供平滑的滚动动画效果。 本文设计了一个…...