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

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

相关代码

cpp 复制代码
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]));	  
}
相关推荐
黑不溜秋的4 小时前
C++ 设计模式 - 策略模式
c++·设计模式·策略模式
Dream it possible!6 小时前
LeetCode 热题 100_在排序数组中查找元素的第一个和最后一个位置(65_34_中等_C++)(二分查找)(一次二分查找+挨个搜索;两次二分查找)
c++·算法·leetcode
柠石榴6 小时前
【练习】【回溯No.1】力扣 77. 组合
c++·算法·leetcode·回溯
王老师青少年编程6 小时前
【GESP C++八级考试考点详细解读】
数据结构·c++·算法·gesp·csp·信奥赛
gz927cool7 小时前
大模型做导师之开源项目学习(lightRAG)
学习·开源·mfc
澄澈天空7 小时前
C++ MFC添加RichEditControl控件后,程序启动失败
c++·mfc
TechNomad8 小时前
MFC开发:如何创建第一个MFC应用程序
mfc
Lzc7748 小时前
C++初阶——简单实现vector
c++·简单实现vector
一个小白19 小时前
C++——list模拟实现
开发语言·c++
程序员老舅9 小时前
C++ Qt项目教程:WebServer网络测试工具
c++·qt·测试工具·webserver·qt项目·qt项目实战