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

MFC工控项目实例之三theApp变量传递对话框参数

承接专栏《MFC工控项目实例之二主菜单制作》
用theApp变量传递对话框参数实时改变iPlotX坐标轴最小值、最大值。
1、新建IDD_SYS_DATA对话框,类名SYS_DATA。
在这里插入图片描述
三个编辑框IDC_EDIT1、IDC_EDIT2、IDC_EDIT3变量如图
在这里插入图片描述
2、SEAL_PRESSURE.h中添加代码

#include "resource.h"		// main symbols
typedef struct sys_para
{union{struct{double	m_fMaxTime;
double	m_fMinTime;
double	m_fMaxPressure;
double	m_fMinPressure;				};char len1[4096];};}SYS_PARA;class CSEAL_PRESSUREApp : public CWinApp
{
public:CSEAL_PRESSUREApp();SYS_PARA m_sys_data;public:virtual BOOL InitInstance();DECLARE_MESSAGE_MAP()
};extern class CSEAL_PRESSUREApp theApp;

3、SEAL_PRESSUREDlg.h中添加代码

public:
void iPlotX_SHOW();

4、SYS_DATA.cpp中添加代码

void SYS_DATA::OnOK() 
{// TODO: Add extra validation here	if(!UpdateData())return;CDialog::OnOK();theApp.m_sys_data.m_fMaxTime=m_fMaxTime;theApp.m_sys_data.m_fMinPressure=m_fMinPressure;theApp.m_sys_data.m_fMaxPressure=m_fMaxPressure;
}

5、SEAL_PRESSUREDlg.cpp中添加代码

#include "SEAL_PRESSURE.h"
#include "SEAL_PRESSUREDlg.h"
#include "SYS_DATA.h"
#include "iplotchannelx.h"
#include "iPlotAxisX.h"
void CSEAL_PRESSUREDlg::iPlotX_SHOW() 
{// TODO: Add your control notification handler code hereCiPlotAxisX axis;		axis = m_ctrlPlot_1.GetXAxis(0);axis.SetMin(0);axis.SetSpan(theApp.m_sys_data.m_fMaxTime);axis = m_ctrlPlot_1.GetYAxis(0);axis.SetMin(theApp.m_sys_data.m_fMinPressure);axis.SetSpan(theApp.m_sys_data.m_fMaxPressure - theApp.m_sys_data.m_fMinPressure);}void CSEAL_PRESSUREDlg::OnSysData() 
{SYS_DATA dlg;if(dlg.DoModal() == IDOK){iPlotX_SHOW();Invalidate();}
}

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

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

相关文章:

  • C# OpenCvSharp 图像处理函数-图像拼接-hconcat、vconcat、Stitcher
  • 软件方案评审与模块优化:从FOC模块出发的电控平台建设
  • emoji_call_read
  • 一键自动粘贴,高效处理邮箱地址,让你的工作效率翻倍提升!
  • 【Java】Java 使用 Graphics2D 在图片上添加文字,并解决图片变红问题
  • 初识docker插件
  • springboot整合redis以及使用
  • ARM32开发--电源管理单元
  • Android Studio项目升级报错:Namespace not specified
  • 渗透测试nginx增加400,500报错页面
  • OpenCV读取和显示和保存图像
  • 【面经总结】Java集合 - Map
  • CompletableFuture方法介绍及代码示例
  • 基于springboot的宠物商城网站
  • DM存储ontap系统修改管理IP
  • Web前端商业素材:挖掘价值,释放创意的无限可能
  • LeetCode206-反转链表
  • 5000天后的世界
  • Photoshop中颜色与色调的调整
  • 【退役之重学Java】终结篇,暂别 Java !
  • 查找——顺序查找和折半查找
  • Bio-Info每日一题:Rosalind-07-Mendel‘s First Law(孟德尔第一定律 python实现)
  • C++ 47 之 函数调用运算符重载
  • [Qt的学习日常]--常用控件1
  • 模型实战(23)之 yolov10 使用总结及训练自己的数据集
  • AIRNet模型使用与代码分析(All-In-One Image Restoration Network)
  • 欧洲杯“球迷狂欢趴”开启,容声带来“健康养鲜”新理念
  • 人工智能对零售业的影响
  • Spring Boot + EasyExcel + SqlServer 进行批量处理数据
  • 深入理解指针(四)