www.gusucode.com > 铁路列车车辆监控系统本系统要求PC机有两个串行通讯串口, > 铁路列车车辆监控系统本系统要求PC机有两个串行通讯串口,有线MODEM一个。其它配置没有严格的要求,一般配置即可。/铁路列车车辆监控系统/电子地图显示模块(江军)/EagleViewNew/DialogMain.cpp
// DialogMain.cpp : implementation file // #include "stdafx.h" #include "EagleView.h" #include "DialogMain.h" #include "MainFrm.h" #include "EagleViewView.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif #import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF") ///////////////////////////////////////////////////////////////////////////// // CDialogMain dialog CDialogMain::CDialogMain(CWnd* pParent /*=NULL*/) : CDialog(CDialogMain::IDD, pParent) { //{{AFX_DATA_INIT(CDialogMain) m_MainNum = _T(""); m_MainName = _T(""); //}}AFX_DATA_INIT } void CDialogMain::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CDialogMain) DDX_Text(pDX, IDC_EDIT_MAIN_NUM, m_MainNum); DDX_Text(pDX, IDC_EDIT_MAIN_NAME, m_MainName); DDX_Control(pDX, IDC_ADODC_MAIN, m_Adodc); DDX_Control(pDX, IDC_DATAGRID_MAIN, m_DGrid); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CDialogMain, CDialog) //{{AFX_MSG_MAP(CDialogMain) ON_BN_CLICKED(IDC_BUTTON_EXIT1, OnButtonExit1) ON_BN_CLICKED(IDC_BUTTON_MAIN, OnButtonMain) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CDialogMain message handlers void CDialogMain::OnButtonExit1() { // TODO: Add your control notification handler code here CMainFrame *pFram=(CMainFrame *)AfxGetApp()->m_pMainWnd; CEagleViewView *pView=(CEagleViewView* )pFram->m_SplitterH.GetPane(0,0); CMapXLayer layerM=pView->m_mainmap.GetLayers().Item("省会"); layerM.GetSelection().ClearSelection(); CDialog::OnCancel(); } void CDialogMain::OnButtonMain() { // TODO: Add your control notification handler code here UpdateData(TRUE); CMainFrame *pFram=(CMainFrame *)AfxGetApp()->m_pMainWnd; CEagleViewView *pView=(CEagleViewView* )pFram->m_SplitterH.GetPane(0,0); CMapXLayer layerM=pView->m_mainmap.GetLayers().Item("省会"); layerM.GetSelection().ClearSelection(); if(m_MainNum.IsEmpty()&&m_MainName.IsEmpty()) { MessageBox("至少输入一个查询项!"); } else { if(m_MainNum.IsEmpty())//m_MainName { CString strSQL="select * from 省会 where 省会名 = '"+m_MainName+"'"; m_Adodc.SetRecordSource(strSQL); m_Adodc.Refresh(); if(m_DGrid.GetRow()==-1) { MessageBox("不存在这样的省会名!"); return; } m_DGrid.SetRow(0); m_DGrid.SetCol(0); m_MainNum=m_DGrid.GetText(); CMainFrame *pFram=(CMainFrame *)AfxGetApp()->m_pMainWnd; CEagleViewView *pView=(CEagleViewView* )pFram->m_SplitterH.GetPane(0,0); CMapXLayer layer=pView->m_mainmap.GetLayers().Item("省会"); if(layer.GetFind().Search(m_MainNum).GetCenterX()==0&&layer.GetFind().Search(m_MainNum).GetCenterY()==0) { MessageBox("不存在这样的省会!"); } else { pView->m_mainmap.ZoomTo(1000,layer.GetFind().Search(m_MainNum).GetCenterX(),layer.GetFind().Search(m_MainNum).GetCenterY()); layer.GetSelection().Add(layer.GetFind().Search(m_MainNum)); } } else if(m_MainName.IsEmpty()) { CString strSQL="select * from 省会 where 省会号 = '"+m_MainNum+"'"; m_Adodc.SetRecordSource(strSQL); m_Adodc.Refresh(); if(m_DGrid.GetRow()==-1) { MessageBox("不存在这样的省会号!"); return; } CMainFrame *pFram=(CMainFrame *)AfxGetApp()->m_pMainWnd; CEagleViewView *pView=(CEagleViewView* )pFram->m_SplitterH.GetPane(0,0); CMapXLayer layer=pView->m_mainmap.GetLayers().Item("省会"); if(layer.GetFind().Search(m_MainNum).GetCenterX()==0&&layer.GetFind().Search(m_MainNum).GetCenterY()==0) { MessageBox("不存在这样的省会!"); } else { pView->m_mainmap.ZoomTo(1000,layer.GetFind().Search(m_MainNum).GetCenterX(),layer.GetFind().Search(m_MainNum).GetCenterY()); layer.GetSelection().Add(layer.GetFind().Search(m_MainNum)); } } else { CString strSQL="select * from 省会 where 省会号 = '"+m_MainNum+"' and 省会名 ='"+m_MainName+"'"; m_Adodc.SetRecordSource(strSQL); m_Adodc.Refresh(); if(m_DGrid.GetRow()==-1) { MessageBox("省会号和省会名不匹配!"); return; } CMainFrame *pFram=(CMainFrame *)AfxGetApp()->m_pMainWnd; CEagleViewView *pView=(CEagleViewView* )pFram->m_SplitterH.GetPane(0,0); CMapXLayer layer=pView->m_mainmap.GetLayers().Item("省会"); if(layer.GetFind().Search(m_MainNum).GetCenterX()==0&&layer.GetFind().Search(m_MainNum).GetCenterY()==0) { MessageBox("不存在这样的省会!"); } else { pView->m_mainmap.ZoomTo(1000,layer.GetFind().Search(m_MainNum).GetCenterX(),layer.GetFind().Search(m_MainNum).GetCenterY()); layer.GetSelection().Add(layer.GetFind().Search(m_MainNum)); } } } }