#include "stdafx.h" #include "Global.h" #include "CMDBtn.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif CCMDBtn::CCMDBtn(void) { Cmd = 0x00; Cmdpage = 0; } BEGIN_MESSAGE_MAP(CCMDBtn, CMFCButton) //{{AFX_MSG_MAP(CMCBtn) ON_WM_LBUTTONUP() ON_WM_LBUTTONDOWN() //}}AFX_MSG_MAP END_MESSAGE_MAP() CCMDBtn::~CCMDBtn(void) { } void CCMDBtn::OnLButtonUp( UINT nFlags, CPoint point ) { g_FrameCamera.ckCmd = 0x00; g_FrameCamera.SendPrepare(); if(g_IsSending) g_MUDPCamera.SendToY(g_FrameCamera.Addr(),8); CButton::OnLButtonUp( nFlags, point ); } void CCMDBtn::OnLButtonDown( UINT nFlags, CPoint point ) { BYTE byFcCmd; byFcCmd = GetFcCmdFromPane( Cmdpage, Cmd ); g_FrameCamera.ckCmd = byFcCmd; g_FrameCamera.SendPrepare(); if(g_IsSending) g_MUDPCamera.SendToY(g_FrameCamera.Addr(),8); CButton::OnLButtonDown( nFlags, point ); } BYTE CCMDBtn::GetFcCmdFromPane( int page, BYTE cmd ) { BYTE B; /*视频管理计算机指令-来之吊舱控制页面*/ if( page == 20) { switch ( cmd ) { case 1: B = 0xC4; break;//2M速率 case 2: B = 0xC5; break;//4M速率 case 3: B = 0xC6; break;//吊舱通道1 case 4: B = 0xC7; break;//吊舱通道2 case 5: B = 0xC8; break;//0-3拼图 case 6: B = 0xC9; break;//4-6拼图 case 7: B = 0xCB; break;//记录 case 8: B = 0xCC; break;//停止记录 case 9: B = 0xCD; break;//清空数据 case 10: B = 0xC0; break;//L链输出/SPI输出 case 11: B = 0xC1; break;//卫通输出/网络输出 case 12: B = 0xC2; break;//双路输出/两路输出 default: B = 0x00; break; } } else if(page==0) { } return B; }