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

📄 cancarddlg.cpp

📁 CAN总线监听代码,非常有用
💻 CPP
字号:
// CanCardDlg.cpp : 实现文件
//

#include "stdafx.h"
#include "CanMonitor.h"
#include "CanCardDlg.h"


// CanCardDlg 对话框

IMPLEMENT_DYNAMIC(CanCardDlg, CDialog)

CanCardDlg::CanCardDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CanCardDlg::IDD, pParent)
    , m_iCanCardType(0)
    , m_iCanCardIndex(0)
    , m_iCanCardPort(0)
    , m_iCanBitTseg0(0)
    , m_iCanBitTseg1(0)
    , m_iCanFltAcc(0)
    , m_iCanFltMask(0)
    , m_iCanFltMode(0)
    , m_iCanWorkMode(0)
{

}

CanCardDlg::~CanCardDlg()
{

}

void CanCardDlg::DoDataExchange(CDataExchange* pDX)
{
    CDialog::DoDataExchange(pDX);
    DDX_Control(pDX, IDC_COMBO_CARDTYPE, m_ctrlComboBoxCardType);
    DDX_Control(pDX, IDC_COMBO_CARDINDEX, m_ctrlComboBoxCardIndex);
    DDX_Control(pDX, IDC_COMBO_CARDPORT, m_ctrlComboBoxCardPort);
    DDX_Control(pDX, IDC_EDIT_TSEG0, m_ctrlCEditTseg0);
    DDX_Control(pDX, IDC_EDIT_TSEG1, m_ctrlCEditTseg1);
    DDX_Control(pDX, IDC_EDIT_ACCP, m_ctrlCEditAcc);
    DDX_Control(pDX, IDC_EDIT_MASK, m_ctrlCEditMask);
    DDX_Control(pDX, IDC_COMBO_FLTTYPE, m_ctrlComboBoxFltType);
    DDX_Control(pDX, IDC_COMBO_MODE, m_ctrlComboBoxWorkMode);
}


BEGIN_MESSAGE_MAP(CanCardDlg, CDialog)
END_MESSAGE_MAP()


// CanCardDlg 消息处理程序

void CanCardDlg::OnOK()
{
    // TODO: 在此添加专用代码和/或调用基类
    wchar_t       szData[10];
    unsigned long ulData;

    m_iCanCardType    = m_ctrlComboBoxCardType.GetCurSel() + 1;
    m_iCanCardIndex   = m_ctrlComboBoxCardIndex.GetCurSel();
    m_iCanCardPort    = m_ctrlComboBoxCardPort.GetCurSel();

    m_iCanFltMode     = m_ctrlComboBoxFltType.GetCurSel();
    m_iCanWorkMode    = m_ctrlComboBoxWorkMode.GetCurSel();

    ::ZeroMemory(szData,sizeof(szData));
    m_ctrlCEditTseg0.GetWindowTextW(szData,9);
    swscanf_s(szData,_T("%x"),&ulData);
    m_iCanBitTseg0 = ulData;

    ::ZeroMemory(szData,sizeof(szData));
    m_ctrlCEditTseg1.GetWindowTextW(szData,9);
    swscanf_s(szData,_T("%x"),&ulData);
    m_iCanBitTseg1 = ulData;

    ::ZeroMemory(szData,sizeof(szData));
    m_ctrlCEditAcc.GetWindowTextW(szData,9);
    swscanf_s(szData,_T("%x"),&ulData);
    m_iCanFltAcc   = ulData;

    ::ZeroMemory(szData,sizeof(szData));
    m_ctrlCEditMask.GetWindowTextW(szData,9);
    swscanf_s(szData,_T("%x"),&ulData);
    m_iCanFltMask  = ulData;

    CDialog::OnOK();
}

BOOL CanCardDlg::OnInitDialog()
{
    CDialog::OnInitDialog();

    // TODO:  在此添加额外的初始化
    m_ctrlComboBoxCardType.SetCurSel(4);
    m_ctrlComboBoxCardIndex.SetCurSel(0);    
    m_ctrlComboBoxCardPort.SetCurSel(0);

    m_ctrlCEditTseg0.SetWindowTextW(_T("00"));
    m_ctrlCEditTseg0.SetLimitText(2);
    m_ctrlCEditTseg1.SetWindowTextW(_T("14"));
    m_ctrlCEditTseg1.SetLimitText(2);
    m_ctrlCEditAcc.SetWindowTextW(_T("00000000"));
    m_ctrlCEditAcc.SetLimitText(8);
    m_ctrlCEditMask.SetWindowTextW(_T("FFFFFFFF"));
    m_ctrlCEditMask.SetLimitText(8);

    m_ctrlComboBoxFltType.SetCurSel(0);
    m_ctrlComboBoxWorkMode.SetCurSel(0);

    return TRUE;  // return TRUE unless you set the focus to a control
    // 异常: OCX 属性页应返回 FALSE
}

⌨️ 快捷键说明

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