📄 motordlgstart.cpp
字号:
// MotorDlgStart.cpp : implementation file
//
#include "stdafx.h"
#include "TestForm.h"
#include "MotorDlgStart.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// MotorDlgStart dialog
MotorDlgStart::MotorDlgStart(CWnd* pParent /*=NULL*/)
: CDialog(MotorDlgStart::IDD, pParent)
{
//{{AFX_DATA_INIT(MotorDlgStart)
m_dModlgstaArm = 0.0;
m_dModlgstaWeight = 0.0;
//}}AFX_DATA_INIT
/*布尔变量初始化*/
m_bModlgstaInitflag =FALSE; //未进行设置试验,设备自检
}
void MotorDlgStart::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(MotorDlgStart)
DDX_Control(pDX, IDC_BUMODLGSTA_LOAD, m_cModlgstaLoad);
DDX_Control(pDX, IDC_EDMODLGSTA_WEIGHT, m_cModlgstaWeight);
DDX_Text(pDX, IDC_EDMODLGSTA_ARM, m_dModlgstaArm);
DDX_Text(pDX, IDC_EDMODLGSTA_WEIGHT, m_dModlgstaWeight);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(MotorDlgStart, CDialog)
//{{AFX_MSG_MAP(MotorDlgStart)
ON_BN_CLICKED(IDC_BUMODLGSTA_INIT, OnBumodlgstaInit)
ON_BN_CLICKED(IDC_BUMODLGSTA_START, OnBumodlgstaStart)
ON_BN_CLICKED(IDC_BUMODLGSTA_STOP, OnBumodlgstaStop)
ON_BN_CLICKED(IDC_BUMODLGSTA_FINISH, OnBumodlgstaFinish)
ON_MESSAGE(WM_OPENDATA,OnOpendata)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// MotorDlgStart message handlers
BOOL MotorDlgStart::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
////----------------------------------------------////
/*初始时单次试验操作不能进行*/
m_cModlgstaWeight.EnableWindow(FALSE);//加载编辑框无效
m_cModlgstaLoad.EnableWindow(FALSE);//加载按钮无效
////----------------------------------------------////
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
//设备自检
void MotorDlgStart::OnBumodlgstaInit()
{
// TODO: Add your control notification handler code here
m_bModlgstaInitflag =TRUE; //设置试验,设备自检完成
}
//开始试验
void MotorDlgStart::OnBumodlgstaStart()
{
// TODO: Add your control notification handler code here
if (m_bModlgstaInitflag)//设备自检完成
{
CTestFormApp *pApp=(CTestFormApp *)AfxGetApp();
//读取控制面板参数
UpdateData(TRUE);
//开始试验时,加载操作有效
m_cModlgstaWeight.EnableWindow(TRUE);//加载编辑框有效
m_cModlgstaLoad.EnableWindow(TRUE);//加载按钮有效
//发送消息给绘图窗口
pApp->pCTestFormView->startDrawDlg.PostMessage(WM_MOTDLGSTARTSTART_HIT,0,0);
//发送消息给编码器主控窗口
pApp->pPeDialogBase->coderDlg.PostMessage(WM_MOTDLGSTARTSTART_HIT,0,0);
}
else
MessageBox("请先进行设备自检和编码器的串口设置操作!");
}
//暂停试验
void MotorDlgStart::OnBumodlgstaStop()
{
// TODO: Add your control notification handler code here
m_cModlgstaWeight.EnableWindow(FALSE);//加载编辑框无效
m_cModlgstaLoad.EnableWindow(FALSE);//加载按钮无效
}
//完成试验
void MotorDlgStart::OnBumodlgstaFinish()
{
// TODO: Add your control notification handler code here
m_cModlgstaWeight.EnableWindow(FALSE);//加载编辑框无效
m_cModlgstaLoad.EnableWindow(FALSE);//加载按钮无效
}
//打开数据响应函数
void MotorDlgStart::OnOpendata(WPARAM wParam, LPARAM lParam)
{
// TODO: Add your control notification handler code here
//MessageBox("123");
CTestFormApp *pApp=(CTestFormApp *)AfxGetApp();
m_dModlgstaArm=pApp->pCTestFormDoc->torquearm; //获得力臂长度
m_dModlgstaWeight=pApp->pCTestFormDoc->light; //最后一次加载重量
m_cModlgstaWeight.EnableWindow(TRUE);//加载编辑框有效
m_cModlgstaLoad.EnableWindow(TRUE);//加载按钮有效
UpdateData(FALSE); //更新主控窗口中的显示
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -