📄 sys.cpp
字号:
};
CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)
{
//{{AFX_DATA_INIT(CAboutDlg)
//}}AFX_DATA_INIT
}
void CAboutDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAboutDlg)
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
// No message handlers
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
// App command to run the dialog
void CSysApp::OnAppAbout()
{
CAboutDlg aboutDlg;
aboutDlg.DoModal();
}
/////////////////////////////////////////////////////////////////////////////
// CSysApp message handlers
void CSysApp::OnUpdateOpenAD(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
pCmdUI->Enable(this->m_bCreateADFrm==FALSE?1:0);
}
void CSysApp::OnOpenAD(void)
{
BeginWaitCursor(); // 开始漏斗鼠标
CDocument* pDoc;
pDoc=pADTemplate->CreateNewDocument(); // 创建新文档
m_pADDoc=(CADDoc*)pDoc; // 保存文档对象
// 创建该文档对象的子帧窗口
m_ADFrame=(CADFrame*)pADTemplate->CreateNewFrame(pDoc, NULL);
// 设置默认的文档标题
// 创建文档实例
// 初始化FRAME子帧窗口,且触发FRAME的OnUpdate函数
pADTemplate->InitialUpdateFrame(m_ADFrame, pDoc);
pDoc->SetTitle("AD数采测试");
pDoc->AddView ((CView*)pADStatusView);
pDoc->AddView((CView*)pParaCfgView);
EndWaitCursor(); // 停止漏斗鼠标
m_bCreateADFrm=TRUE;
}
void CSysApp::OnHistoryData()
{
// TODO: Add your command handler code here
CString strNewFileName;
// 弹出文件对话框
if (!(DoPromptFileName(strNewFileName, IDS_ProccessHistoryData,
OFN_HIDEREADONLY , TRUE, NULL))) // OFN_CREATEPROMPT:当文件不存在时,是否要求新建
return;
CFile file;
CFileStatus status;
if (!file.GetStatus(strNewFileName, status))
{
strNewFileName=strNewFileName+" 不存在!";
AfxMessageBox(strNewFileName,MB_ICONSTOP, 0);
return; // 如果文件不存
}
CFile File;
FILE_HEADER m_Header;
File.Open(strNewFileName, PCI2006_modeRead);
File.Seek(0,CFile::begin);
File.Read((WORD*)&m_Header,sizeof(m_Header)); // 文件信息由HistDigitView类将其置在HistDataFrm的对话框条上OnInitialUpdate
File.Close();
if(m_Header.DeviceID !=0x2006)
{
AfxMessageBox("对不起,该文件不属于阿尔泰科贸公司的数据文件",MB_ICONSTOP, 0);
return;
}
CHistDataDoc* pDoc;
BeginWaitCursor(); // 开始漏斗鼠标
pDoc=(CHistDataDoc*)pHistDataTemplate->OpenDocumentFile(strNewFileName); // 先传递文件名到pDoc的消息函数OnOpenDocument
EndWaitCursor(); // 停止漏斗鼠标
}
void CSysApp::OnUpdateHistoryData(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
}
int CSysApp::ExitInstance()
{
// TODO: Add your specialized code here and/or call the base class
ReleaseMutex(m_hMutex);
if(m_hDevice!=INVALID_HANDLE_VALUE) PCI2006_ReleaseDevice(m_hDevice);
return CWinApp::ExitInstance();
}
void CSysApp::OnOpenIO()
{
// TODO: Add your command handler code here
CDIODoc* pDoc;
BeginWaitCursor(); // 开始漏斗鼠标
pDoc=(CDIODoc*)pIOTemplate->OpenDocumentFile(NULL); // 先传递文件名到pDoc的消息函数OnOpenDocument
pDoc->SetTitle("开关量测试"); // 置文档新标题
EndWaitCursor(); // 停止漏斗鼠标
m_bCreateDIOFrm = TRUE;
}
void CSysApp::OnUpdateOpenIO(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
pCmdUI->Enable(this->m_bCreateDIOFrm==FALSE?1:0);
}
void CSysApp::OnUpdateCloseFile(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
if((nProcessMode==3)&&(bCreateDevice))
pCmdUI->Enable(FALSE);
else
pCmdUI->Enable(!m_bCloseFile);
}
void CSysApp::OnUpdateDataFileNew(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
pCmdUI->Enable(!bCreateDevice&&m_bFirstCreateDeviceFile);
}
void CSysApp::OnUpdateListDevice(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
}
void CSysApp::OnCloseFile()
{
// TODO: Add your command handler code here
m_pADDoc->OnCloseFile();
}
void CSysApp::OnDataFileNew()
{
// TODO: Add your command handler code here
m_pADDoc->OnDataFileNew();
}
void CSysApp::OnListDevice()
{
// TODO: Add your command handler code here
m_pADDoc->OnListDevice();
}
void CSysApp::OnDataSave()
{
// TODO: Add your command handler code here
nProcessMode=3;
pADStatusView->SetDlgCheck();
}
void CSysApp::OnUpdateDataSave(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
if(m_bFirstCreateDeviceFile)
pCmdUI->Enable(FALSE);
pCmdUI->SetCheck(nProcessMode==3? 1:0);
}
void CSysApp::OnDigitalShow()
{
// TODO: Add your command handler code here
nProcessMode=1;
pADStatusView->SetDlgCheck();
}
void CSysApp::OnUpdateDigitalShow(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
pCmdUI->SetCheck(nProcessMode==1?1:0);
CSysApp *pApp=(CSysApp *)AfxGetApp();
CADDoc* pDoc=pApp->m_pADDoc;
// 在线程中取得视图指针
CADDigitView* pDigitView=(CADDigitView*)(CWnd::FromHandle(pDoc->m_hWndDigit));
if(nProcessMode==3) // 如果为存盘方式
{
pDigitView->EnableWindow(FALSE);
}
else
{
pDigitView->EnableWindow(TRUE);
}
}
void CSysApp::OnGraphicShow()
{
// TODO: Add your command handler code here
nProcessMode=2;
pADStatusView->SetDlgCheck();
}
void CSysApp::OnUpdateGraphicShow(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
pCmdUI->SetCheck(nProcessMode==2?1:0);
CSysApp *pApp=(CSysApp *)AfxGetApp();
CADDoc* pDoc=pApp->m_pADDoc;
// 在线程中取得视图指针
CADWaveView* pWaveView=(CADWaveView*)(CWnd::FromHandle(pDoc->m_hWndWave));
if(nProcessMode==3) // 如果为存盘方式
{
pWaveView->EnableWindow(FALSE);
}
else
{
pWaveView->EnableWindow(TRUE);
}
}
void CSysApp::OnOpenDA()
{
// TODO: Add your command handler code here
CDADoc* pDoc;
BeginWaitCursor(); // 开始漏斗鼠标
pDoc=(CDADoc*)pDATemplate->OpenDocumentFile(NULL); // 先传递文件名到pDoc的消息函数OnOpenDocument
pDoc->SetTitle("DA输出测试"); // 置文档新标题
EndWaitCursor(); // 停止漏斗鼠标
m_bCreateDAFrm = TRUE;
}
void CSysApp::OnUpdateOpenDA(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
pCmdUI->Enable(this->m_bCreateDAFrm==FALSE?1:0);
}
void CSysApp::OnStartDeviceAD()
{
// TODO: Add your command handler code here
m_pADDoc->StartDeviceAD();
}
void CSysApp::OnUpdateStartDeviceAD(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
pCmdUI->Enable(bDeviceADRun==FALSE?1:0);
}
void CSysApp::OnStopDeviceAD()
{
// TODO: Add your command handler code here
m_pADDoc->StopDeviceAD();
}
void CSysApp::OnUpdateStopDeviceAD(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
pCmdUI->Enable(bDeviceADRun==TRUE?1:0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -