⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dlgacupara.cpp

📁 串口收发工具
💻 CPP
📖 第 1 页 / 共 2 页
字号:
void CDlgAcuPara::OnChangeEditMinlimit() 
{
	UpdateData(true);
	if(m_MinLimit>m_MaxLimit)
	{
		MessageBox(_T("下限值不能超过上限值"));
		return;
	}
	int nCurSel = m_YcNo.GetCurSel();
	p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].UnderLimit = m_MinLimit;
	SETDF0241PARA
}

void CDlgAcuPara::OnChangeEditPoint1() 
{
	UpdateData(true);
	
		int nCurSel = m_YcNo.GetCurSel();
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].UpperPtr = m_Point1_yc;
	
	SETDF0241PARA	
}

void CDlgAcuPara::OnChangeEditPoint2() 
{
UpdateData(true);
	
		int nCurSel = m_YcNo.GetCurSel();
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].UnderPtr = m_Point2_yc;
	
	SETDF0241PARA	
}

void CDlgAcuPara::OnCheckMaxlimitAllow() 
{
	// TODO: Add your control notification handler code here
	int nCurSel = m_YcNo.GetCurSel();
	int check = ((CButton*)(GetDlgItem(IDC_CHECK_MAXLIMIT_ALLOW)))->GetCheck();
	if(check)
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].Control |= 0x80;
		
	else
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].Control &= 0x7F;
	((CEdit*)GetDlgItem(IDC_EDIT_POINT1))->EnableWindow(check);
	SETDF0241PARA
}

void CDlgAcuPara::OnCheckMinlimitAllow() 
{
	// TODO: Add your control notification handler code here
	int nCurSel = m_YcNo.GetCurSel();
	int check = ((CButton*)(GetDlgItem(IDC_CHECK_MINLIMIT_ALLOW)))->GetCheck();
	if(check)
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].Control |= 0x40;
	else
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].Control &= 0xBF;
	((CEdit*)GetDlgItem(IDC_EDIT_POINT2))->EnableWindow(check);
	SETDF0241PARA
}

void CDlgAcuPara::OnCheckCom1() 
{
	// TODO: Add your control notification handler code here
	int nCurSel = m_YcNo.GetCurSel();
	int check = ((CButton*)(GetDlgItem(IDC_CHECK_COM1)))->GetCheck();
	if(check)
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].Control |= 0x01;
	else
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].Control &= 0xFE;
	SETDF0241PARA
}

void CDlgAcuPara::OnCheckCom2() 
{
	// TODO: Add your control notification handler code here
	int nCurSel = m_YcNo.GetCurSel();
	int check = ((CButton*)(GetDlgItem(IDC_CHECK_COM2)))->GetCheck();
	if(check)
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].Control |= 0x02;
	else
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].Control &= 0xFD;
	SETDF0241PARA
}

void CDlgAcuPara::OnCheckCom3() 
{
	// TODO: Add your control notification handler code here
	int nCurSel = m_YcNo.GetCurSel();
	int check = ((CButton*)(GetDlgItem(IDC_CHECK_COM3)))->GetCheck();
	if(check)
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].Control |= 0x04;
	else
		p.ACU_Coe[nUnitNo].YC_Coe[nCurSel].Control &= 0xFB;
	SETDF0241PARA
}



/************************************************************************/
/* YX部分内容                                                           */
/************************************************************************/
void CDlgAcuPara::OnSelendokComboYxNo() 
{
	// TODO: Add your control notification handler code here
	RefreshData();
}

void CDlgAcuPara::OnChangeEditYxName() 
{
	UpdateData(true);
	int nCurSel = m_YxNo.GetCurSel();
	if (nCurSel < 8)
		strcpy(p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Name,m_YxName);
	else
		strcpy(p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Name,m_YxName);
	
	SETDF0241PARA	
}

void CDlgAcuPara::OnRadioActionAlarm() 
{
	// TODO: Add your control notification handler code here
		UpdateData(true);
	int nCurSel = m_YxNo.GetCurSel();
	if (nCurSel < 8)
		p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control &= 0xF7;
	else
		p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control &= 0xF7;
	SETDF0241PARA
}

void CDlgAcuPara::OnRadioStatusAlarm() 
{
	// TODO: Add your control notification handler code here
		UpdateData(true);
	int nCurSel = m_YxNo.GetCurSel();
	if (nCurSel < 8)
		p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control |= 0x08;
	else
		p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control |= 0x08;
	SETDF0241PARA
}

void CDlgAcuPara::OnChangeEditPoint3() 
{
	UpdateData(true);

	int nCurSel = m_YxNo.GetCurSel();
	if (nCurSel < 8)
		p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].OnPtr = m_Point1_yx;
	else
		p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].OnPtr = m_Point1_yx;
	SETDF0241PARA	
}

void CDlgAcuPara::OnChangeEditPoint4() 
{
	UpdateData(true);
	
	int nCurSel = m_YxNo.GetCurSel();
	if (nCurSel < 8)
		p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].OffPtr = m_Point2_yx;
	else
		p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].OffPtr = m_Point2_yx;
	SETDF0241PARA
}

void CDlgAcuPara::OnCheckPointAllow() 
{
	int nCurSel = m_YxNo.GetCurSel();
	int check = ((CButton*)(GetDlgItem(IDC_CHECK_POINT_ALLOW)))->GetCheck();
	if(check)
	{
		if (nCurSel < 8)
			p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control |= 0x80;
		else
			p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control |= 0x80;
	}
	else
	{
		if (nCurSel < 8)
			p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control &= 0x7F;
		else
			p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control &= 0x7F;
	}
	((CEdit*)GetDlgItem(IDC_EDIT_POINT3))->EnableWindow(check);
	SETDF0241PARA
}

void CDlgAcuPara::OnCheckPoint1Allow() 
{
	int nCurSel = m_YxNo.GetCurSel();
	int check = ((CButton*)(GetDlgItem(IDC_CHECK_POINT1_ALLOW)))->GetCheck();
	if(check)
	{
		if (nCurSel < 8)
			p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control |= 0x40;
		else
			p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control |= 0x40;
	}
	else
	{
		if (nCurSel < 8)
			p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control &= 0xBF;
		else
			p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control &= 0xBF;
	}
	((CEdit*)GetDlgItem(IDC_EDIT_POINT4))->EnableWindow(check);
	SETDF0241PARA
}

void CDlgAcuPara::OnCheckCom4() 
{
	int nCurSel = m_YxNo.GetCurSel();
	int check = ((CButton*)(GetDlgItem(IDC_CHECK_COM4)))->GetCheck();
	if(check)
	{
		if (nCurSel < 8)
			p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control |= 0x01;
		else
			p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control |= 0x01;
	}
	else
	{
		if (nCurSel < 8)
			p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control &= 0xFE;
		else
			p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control &= 0xFE;
	}
	SETDF0241PARA
}

void CDlgAcuPara::OnCheckCom5() 
{
	int nCurSel = m_YxNo.GetCurSel();
	int check = ((CButton*)(GetDlgItem(IDC_CHECK_COM5)))->GetCheck();
	if(check)
	{
		if (nCurSel < 8)
			p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control |= 0x02;
		else
			p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control |= 0x02;
	}
	else
	{
		if (nCurSel < 8)
			p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control &= 0xFD;
		else
			p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control &= 0xFD;
	}
	SETDF0241PARA
}

void CDlgAcuPara::OnCheckCom6() 
{
	int nCurSel = m_YxNo.GetCurSel();
	int check = ((CButton*)(GetDlgItem(IDC_CHECK_COM6)))->GetCheck();
	if(check)
	{
		if (nCurSel < 8)
			p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control |= 0x04;
		else
			p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control |= 0x04;
	}
	else
	{
		if (nCurSel < 8)
			p.ACU_Coe[nUnitNo].YX_Coe[nCurSel].Control &= 0xFB;
		else
			p.ACU_Coe_YX[nUnitNo].YX_Coe[nCurSel-8].Control &= 0xFB;
	}
	SETDF0241PARA
}




/************************************************************************/
/* 告警部分内容                                                           */
/************************************************************************/
void CDlgAcuPara::OnSelendokComboAlarmNo() 
{
		RefreshData();
}

void CDlgAcuPara::OnChangeEditAlarmName() 
{
	UpdateData(true);
	int nCurSel = m_AlarmNo.GetCurSel();
	strcpy(p.ACU_Coe[nUnitNo].Alarm_Coe[nCurSel].Display,m_AlarmName);
	SETDF0241PARA
}

void CDlgAcuPara::OnSelendokComboAlarmlevel2() 
{
	UpdateData(true);
	int nCurSel = m_AlarmNo.GetCurSel();
	p.ACU_Coe[nUnitNo].Alarm_Coe[nCurSel].Control = m_AlarmLevel.GetCurSel();
	SETDF0241PARA	
}

void CDlgAcuPara::OnChangeEditAlarmVoice1() 
{
	UpdateData(true);
	int nCurSel = m_AlarmNo.GetCurSel();
	p.ACU_Coe[nUnitNo].Alarm_Coe[nCurSel].Sound[0] = m_Voice1;
	SETDF0241PARA
}



BOOL CDlgAcuPara::OnApply() 
{
	// TODO: Add your specialized code here and/or call the base class
	CFile file;
	p.CheckSum = ((CMainFrame*)AfxGetMainWnd())->Check_Coe((BYTE*)&p,sizeof(p)-2);
	if(file.Open(strFileName,CFile::modeWrite|CFile::modeCreate))
	{
		file.Write(&p,sizeof(p));
		file.Close();
	}
			
	return CPropertyPage::OnApply();
}
void CDlgAcuPara::OnButtonPaste()
{
	int nFromNo = ((CComboBox*)GetDlgItem(IDC_COMBO2))->GetCurSel();
	int nToNo = ((CComboBox*)GetDlgItem(IDC_COMBO3))->GetCurSel();
	if ((nFromNo<0)||(nToNo<0))
	{
		MessageBox("请选择需要复制的源单元和目的单元!");
		return;
	}
	p.ACU_Coe[nToNo] = p.ACU_Coe[nFromNo];
	p.ACU_Coe_YX[nToNo] = p.ACU_Coe_YX[nFromNo];
	
	OnSelendokCombo1();
	OnApply();
	MessageBox("复制成功!");
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -