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

📄 writeparam.cpp

📁 一个很好的VC++程序
💻 CPP
字号:
// WriteParam.cpp : implementation file
//

#include "stdafx.h"
#include "SMT5K.h"
#include "SM5000.h"
#include "WriteParam.h"
#include "SerialPort.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CWriteParam dialog
extern CSerialPort m_ComPort; 
extern CString m_strTXDataCOM1; //COM1发送数据


CWriteParam::CWriteParam(CWnd* pParent /*=NULL*/)
	: CDialog(CWriteParam::IDD, pParent)
{
	//{{AFX_DATA_INIT(CWriteParam)
	m_A = 1;
	m_AO = 0;
	m_CM = 0;
	m_CP = 0;
	m_D = 1;
	m_C = 0;
	m_DP = 0;
	m_EP = 0;
	m_LP = 0;
	m_K = 100000;
	m_P = 0;
	m_R = 4000000;
	m_SV = 1000;
	m_V = 1000;
	m_X_En = FALSE;
	m_U_En = FALSE;
	m_Y_En = FALSE;
	m_Z_En = FALSE;
	m_A_En = FALSE;
	m_AO_En = FALSE;
	m_C_En = FALSE;
	m_CM_En = FALSE;
	m_CP_En = FALSE;
	m_D_En = FALSE;
	m_DP_En = FALSE;
	m_EP_En = FALSE;
	m_K_En = FALSE;
	m_LP_En = FALSE;
	m_P_En = FALSE;
	m_R_En = FALSE;
	m_SV_En = FALSE;
	m_V_En = FALSE;
	//}}AFX_DATA_INIT
}


void CWriteParam::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CWriteParam)
	DDX_Text(pDX, IDC_EDIT_PARAM_A, m_A);
	DDV_MinMaxInt(pDX, m_A, 1, 4000000);
	DDX_Text(pDX, IDC_EDIT_PARAM_AO, m_AO);
	DDV_MinMaxInt(pDX, m_AO, 0, 2147483647);
	DDX_Text(pDX, IDC_EDIT_PARAM_CM, m_CM);
	DDV_MinMaxInt(pDX, m_CM, -2147483648, 2147483647);
	DDX_Text(pDX, IDC_EDIT_PARAM_CP, m_CP);
	DDV_MinMaxInt(pDX, m_CP, -2147483648, 2147483647);
	DDX_Text(pDX, IDC_EDIT_PARAM_D, m_D);
	DDV_MinMaxInt(pDX, m_D, 1, 4000000);
	DDX_Text(pDX, IDC_EDIT_PARAM_DP, m_DP);
	DDV_MinMaxInt(pDX, m_DP, 0, 2147483647);
	DDX_Text(pDX, IDC_EDIT_PARAM_EP, m_EP);
	DDV_MinMaxInt(pDX, m_EP, -2147483648, 2147483647);
	DDX_Text(pDX, IDC_EDIT_PARAM_LP, m_LP);
	DDV_MinMaxInt(pDX, m_LP, -2147483648, 2147483647);
	DDX_Text(pDX, IDC_EDIT_PARAM_K, m_K);
	DDV_MinMaxInt(pDX, m_K, 1, 32768000);
	DDX_Text(pDX, IDC_EDIT_PARAM_P, m_P);
	DDV_MinMaxInt(pDX, m_P, -2147483648, 2147483647);
	DDX_Text(pDX, IDC_EDIT_PARAM_R, m_R);
	DDV_MinMaxInt(pDX, m_R, 16000, 8000000);
	DDX_Text(pDX, IDC_EDIT_PARAM_SV, m_SV);
	DDV_MinMaxInt(pDX, m_SV, 1, 4000000);
	DDX_Text(pDX, IDC_EDIT_PARAM_V, m_V);
	DDV_MinMaxInt(pDX, m_V, 1, 4000000);
	DDX_Check(pDX, IDC_CHECK_X, m_X_En);
	DDX_Check(pDX, IDC_CHECK_U, m_U_En);
	DDX_Check(pDX, IDC_CHECK_Y, m_Y_En);
	DDX_Check(pDX, IDC_CHECK_Z, m_Z_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_A, m_A_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_AO, m_AO_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_C, m_C_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_CM, m_CM_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_CP, m_CP_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_D, m_D_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_DP, m_DP_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_EP, m_EP_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_K, m_K_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_LP, m_LP_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_P, m_P_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_R, m_R_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_SV, m_SV_En);
	DDX_Check(pDX, IDC_CHECK_PARAM_V, m_V_En);
	DDX_Text(pDX, IDC_EDIT_PARAM_C, m_C);
	DDV_MinMaxInt(pDX, m_C, -8388608, 8388607);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CWriteParam, CDialog)
	//{{AFX_MSG_MAP(CWriteParam)
	ON_BN_CLICKED(IDC_CHECK_X, OnCheckX)
	ON_BN_CLICKED(IDC_CHECK_Y, OnCheckY)
	ON_BN_CLICKED(IDC_CHECK_Z, OnCheckZ)
	ON_BN_CLICKED(IDC_CHECK_U, OnCheckU)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CWriteParam message handlers

void CWriteParam::OnCheckX() 
{
	m_X_En = ! m_X_En;
}

void CWriteParam::OnCheckY() 
{
	m_Y_En = ! m_Y_En;
}

void CWriteParam::OnCheckZ() 
{
	m_Z_En = ! m_Z_En;
}

void CWriteParam::OnCheckU() 
{
	m_U_En = ! m_U_En;
}


void CWriteParam::OnOK() 
{
		// TODO: Add extra validation here
	short mAxis;
	mAxis=GetmAxisValue(m_X_En, m_Y_En, m_Z_En, m_U_En);

	m_strTXDataCOM1.Empty();

	if(mAxis!=0) 
	{
		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_R))->GetCheck() )
		{
			m_R = GetDlgItemInt(IDC_EDIT_PARAM_R);
			WriteParam( 0, m_R, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_K))->GetCheck() )
		{
			m_K = GetDlgItemInt(IDC_EDIT_PARAM_K);
			WriteParam( 1, m_K, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_A))->GetCheck() )
		{
			m_A = GetDlgItemInt(IDC_EDIT_PARAM_A);
			WriteParam( 2, m_A, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_D))->GetCheck() )
		{
			m_D = GetDlgItemInt(IDC_EDIT_PARAM_D);
			WriteParam( 3, m_D, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_SV))->GetCheck() )
		{
			m_SV = GetDlgItemInt(IDC_EDIT_PARAM_SV);
			WriteParam( 4, m_SV, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_V))->GetCheck() )
		{
			m_V = GetDlgItemInt(IDC_EDIT_PARAM_V);
			WriteParam( 5, m_V, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_P))->GetCheck() )
		{
			m_P = GetDlgItemInt(IDC_EDIT_PARAM_P);
			WriteParam( 6, m_P, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_DP))->GetCheck() )
		{
			m_DP = GetDlgItemInt(IDC_EDIT_PARAM_DP);
			WriteParam( 7, m_DP, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_C))->GetCheck() )
		{
			m_C = GetDlgItemInt(IDC_EDIT_PARAM_C);
			WriteParam( 8, m_C, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_LP))->GetCheck() )
		{
			m_LP = GetDlgItemInt(IDC_EDIT_PARAM_LP);
			WriteParam( 9, m_LP, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_EP))->GetCheck() )
		{
			m_EP = GetDlgItemInt(IDC_EDIT_PARAM_EP);
			WriteParam(10, m_EP, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_CP))->GetCheck() )
		{
			m_CP = GetDlgItemInt(IDC_EDIT_PARAM_CP);
			WriteParam(11, m_CP, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_CM))->GetCheck() )
		{
			m_CM = GetDlgItemInt(IDC_EDIT_PARAM_CM);
			WriteParam(12, m_CM, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}

		if( ((CButton*)GetDlgItem(IDC_CHECK_PARAM_AO))->GetCheck() )
		{
			m_AO = GetDlgItemInt(IDC_EDIT_PARAM_AO);
			WriteParam(13, m_AO, m_X_En, m_Y_En, m_Z_En, m_U_En );
		}
	}
	
	m_ComPort.WriteToPort((LPCTSTR)m_strTXDataCOM1);

	CDialog::OnOK();
}


⌨️ 快捷键说明

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