216 lines
7.3 KiB
C++
216 lines
7.3 KiB
C++
// ProcessButton.cpp : ʵÏÖÎļþ
|
|
//
|
|
|
|
#include "stdafx.h"
|
|
#include "resource.h"
|
|
#include "afxwin.h"
|
|
#include "..\..\..\SevenOcean\SO7_Proto.h"
|
|
|
|
#include "MyMFCButton.h"
|
|
|
|
extern CSO7_Proto* m_pSO7_Proto;
|
|
|
|
// CMyMFCButton
|
|
|
|
IMPLEMENT_DYNAMIC(CMyMFCButton, CMFCButton)
|
|
|
|
CMyMFCButton::CMyMFCButton()
|
|
{
|
|
|
|
}
|
|
|
|
CMyMFCButton::~CMyMFCButton()
|
|
{
|
|
}
|
|
|
|
|
|
BEGIN_MESSAGE_MAP(CMyMFCButton, CMFCButton)
|
|
ON_WM_LBUTTONDOWN()
|
|
ON_WM_LBUTTONUP()
|
|
ON_WM_LBUTTONDBLCLK()
|
|
END_MESSAGE_MAP()
|
|
|
|
|
|
// CMyMFCButton ÏûÏ¢´¦Àí³ÌÐò
|
|
|
|
|
|
//====================================
|
|
void CMyMFCButton::OnLButtonDown(UINT nFlags, CPoint point)
|
|
{
|
|
if ( point.x>0 )
|
|
{
|
|
if (nFlags == MK_LBUTTON)
|
|
{
|
|
int iCtrlID;
|
|
iCtrlID=GetDlgCtrlID();
|
|
|
|
switch (iCtrlID)
|
|
{
|
|
//======================================================================================
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_X_LEFT:
|
|
{
|
|
if (m_pSO7_Proto->g_machine.x._Move_Speed_Gear==0)
|
|
{
|
|
long lMoveTOX=m_pSO7_Proto->g_machine.x._pos_fixed._long_;
|
|
long lMoveTOY=m_pSO7_Proto->g_machine.y._pos_fixed._long_;
|
|
long lMoveTOZ=m_pSO7_Proto->g_machine.z._pos_fixed._long_;
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_*=-1;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_=0;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_=0;
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_TO_POS_XYZ(CT_MOVETOXYZ);
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_=lMoveTOX;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_=lMoveTOY;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_=lMoveTOZ;
|
|
|
|
}
|
|
else
|
|
{
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_X(-m_pSO7_Proto->g_machine.x._Move_Speed_Gear);
|
|
}
|
|
break;
|
|
}
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_X_RIGHT:
|
|
{
|
|
if (m_pSO7_Proto->g_machine.x._Move_Speed_Gear==0)
|
|
{
|
|
long lMoveTOX=m_pSO7_Proto->g_machine.x._pos_fixed._long_;
|
|
long lMoveTOY=m_pSO7_Proto->g_machine.y._pos_fixed._long_;
|
|
long lMoveTOZ=m_pSO7_Proto->g_machine.z._pos_fixed._long_;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_=0;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_=0;
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_TO_POS_XYZ(CT_MOVETOXYZ);
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_=lMoveTOX;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_=lMoveTOY;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_=lMoveTOZ;
|
|
}
|
|
else
|
|
{
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_X(m_pSO7_Proto->g_machine.x._Move_Speed_Gear);
|
|
}
|
|
break;
|
|
}
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_Y_FRONTWARD:
|
|
{
|
|
if (m_pSO7_Proto->g_machine.y._Move_Speed_Gear==0)
|
|
{
|
|
long lMoveTOX=m_pSO7_Proto->g_machine.x._pos_fixed._long_;
|
|
long lMoveTOY=m_pSO7_Proto->g_machine.y._pos_fixed._long_;
|
|
long lMoveTOZ=m_pSO7_Proto->g_machine.z._pos_fixed._long_;
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_=0;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_=0;
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_TO_POS_XYZ(CT_MOVETOXYZ);
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_=lMoveTOX;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_=lMoveTOY;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_=lMoveTOZ;
|
|
}
|
|
else
|
|
{
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_Y(m_pSO7_Proto->g_machine.y._Move_Speed_Gear);
|
|
}
|
|
break;
|
|
}
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_Y_BACKWARD:
|
|
{
|
|
if (m_pSO7_Proto->g_machine.y._Move_Speed_Gear==0)
|
|
{
|
|
long lMoveTOX=m_pSO7_Proto->g_machine.x._pos_fixed._long_;
|
|
long lMoveTOY=m_pSO7_Proto->g_machine.y._pos_fixed._long_;
|
|
long lMoveTOZ=m_pSO7_Proto->g_machine.z._pos_fixed._long_;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_*=-1;
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_=0;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_=0;
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_TO_POS_XYZ(CT_MOVETOXYZ);
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_=lMoveTOX;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_=lMoveTOY;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_=lMoveTOZ;
|
|
}
|
|
else
|
|
{
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_Y(-m_pSO7_Proto->g_machine.y._Move_Speed_Gear);
|
|
}
|
|
break;
|
|
}
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_Z_UP:
|
|
{
|
|
if (m_pSO7_Proto->g_machine.z._Move_Speed_Gear==0)
|
|
{
|
|
long lMoveTOX=m_pSO7_Proto->g_machine.x._pos_fixed._long_;
|
|
long lMoveTOY=m_pSO7_Proto->g_machine.y._pos_fixed._long_;
|
|
long lMoveTOZ=m_pSO7_Proto->g_machine.z._pos_fixed._long_;
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_=0;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_=0;
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_TO_POS_XYZ(CT_MOVETOXYZ);
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_=lMoveTOX;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_=lMoveTOY;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_=lMoveTOZ;
|
|
}
|
|
else
|
|
{
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_Z(m_pSO7_Proto->g_machine.z._Move_Speed_Gear);
|
|
}
|
|
break;
|
|
}
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_Z_DOWN:
|
|
{
|
|
if (m_pSO7_Proto->g_machine.z._Move_Speed_Gear==0)
|
|
{
|
|
long lMoveTOX=m_pSO7_Proto->g_machine.x._pos_fixed._long_;
|
|
long lMoveTOY=m_pSO7_Proto->g_machine.y._pos_fixed._long_;
|
|
long lMoveTOZ=m_pSO7_Proto->g_machine.z._pos_fixed._long_;
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_=0;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_=0;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_*=-1;
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_TO_POS_XYZ(CT_MOVETOXYZ);
|
|
m_pSO7_Proto->g_machine.x._pos_fixed._long_=lMoveTOX;
|
|
m_pSO7_Proto->g_machine.y._pos_fixed._long_=lMoveTOY;
|
|
m_pSO7_Proto->g_machine.z._pos_fixed._long_=lMoveTOZ;
|
|
}
|
|
else
|
|
{
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_MOVE_Z(-m_pSO7_Proto->g_machine.z._Move_Speed_Gear);
|
|
}
|
|
break;
|
|
}
|
|
default:
|
|
break;
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//====================================
|
|
void CMyMFCButton::OnLButtonUp(UINT /*nFlags*/, CPoint/* point*/)
|
|
{
|
|
int iCtrlID;
|
|
iCtrlID=GetDlgCtrlID();
|
|
switch (iCtrlID)
|
|
{
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_X_LEFT:
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_X_RIGHT:
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_Y_FRONTWARD:
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_Y_BACKWARD:
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_Z_UP:
|
|
case IDC_MFCBUTTON_SO7_PROGRAM_Z_DOWN:
|
|
{
|
|
if (m_pSO7_Proto->g_machine.x._Move_Speed_Gear==0)
|
|
{
|
|
;
|
|
}
|
|
else
|
|
{
|
|
m_pSO7_Proto->_send_cmd_SO7_CMD_STOP_MOVE_XYZ();
|
|
}
|
|
break;
|
|
}
|
|
default:
|
|
break;
|
|
|
|
}
|
|
}
|
|
|
|
void CMyMFCButton::OnLButtonDblClk(UINT nFlags, CPoint point)
|
|
{
|
|
OnLButtonUp(nFlags, point);
|
|
}
|