📄 editroutelistdlg.cpp
字号:
// EditRouteListDlg.cpp : implementation file
//
#include "stdafx.h"
#include "PROJECTPMU.h"
#include "EditRouteListDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CEditRouteListDlg dialog
CEditRouteListDlg::CEditRouteListDlg(CWnd* pParent /*=NULL*/)
: CDialog(CEditRouteListDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CEditRouteListDlg)
m_OriStationEn_Edit = _T("");
m_OriStationCh_Edit = _T("");
m_TrainCode_Edit = _T("");
m_LastStationEn_Edit = _T("");
m_LastStationCh_Edit = _T("");
m_PassStationEn_Edit = _T("");
m_PassStationCh_Edit = _T("");
m_StartTime_Edit = _T("");
m_EndTime_Edit = _T("");
m_RunTime_Edit = _T("");
//}}AFX_DATA_INIT
}
void CEditRouteListDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CEditRouteListDlg)
DDX_Text(pDX, IDC_EDIT2, m_OriStationEn_Edit);
DDX_Text(pDX, IDC_EDIT3, m_OriStationCh_Edit);
DDX_Text(pDX, IDC_EDIT1, m_TrainCode_Edit);
DDX_Text(pDX, IDC_EDIT4, m_LastStationEn_Edit);
DDX_Text(pDX, IDC_EDIT5, m_LastStationCh_Edit);
DDX_Text(pDX, IDC_EDIT6, m_PassStationEn_Edit);
DDX_Text(pDX, IDC_EDIT7, m_PassStationCh_Edit);
DDX_Text(pDX, IDC_EDIT8, m_StartTime_Edit);
DDX_Text(pDX, IDC_EDIT9, m_EndTime_Edit);
DDX_Text(pDX, IDC_EDIT10, m_RunTime_Edit);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CEditRouteListDlg, CDialog)
//{{AFX_MSG_MAP(CEditRouteListDlg)
ON_BN_CLICKED(IDC_SaveButton, OnSaveButton)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CEditRouteListDlg message handlers
BOOL CEditRouteListDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
//得到应用程序所在文件夹路径
CAdoRecordSet pRS;
if(NULL != GetModuleFileName(NULL,mDir_Path,256))
{
int n=strlen(mDir_Path);
for (int i=n; i>=0; i--)
{
if (mDir_Path[i] == '\\')
{
mDir_Path[i] = '\0';
break;
}
}
strcpy(mMDB_Path,mDir_Path);
strcat(mMDB_Path,"\\PIS.mdb"); // 数据库路径
}
//把需要修改的数据显示在文本框中
m_TrainCode_Edit=TrainCode;
m_OriStationEn_Edit=OriginalStationEn;
m_OriStationCh_Edit=OriginalStationCh;
m_LastStationEn_Edit=LastStationEn;
m_LastStationCh_Edit=LastStationCh;
m_PassStationEn_Edit=PassStationEn;
m_PassStationCh_Edit=PassStationCh;
m_StartTime_Edit=StartTime;
m_EndTime_Edit=EndTime;
m_RunTime_Edit=RunTime;
UpdateData(FALSE);//显示出来
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CEditRouteListDlg::OnSaveButton()
{
// TODO: Add your control notification handler code here
CString sTrainCode="",sOriginalStationEn="",sOriginalStationCh="",sLastStationEn="",\
sLastStationCh="",sPassStationEn="",sPassStationCh="",sStartTime="",sEndTime="",sRunTime="",\
sqlupdate="",sqlupdate1="",sqladd="",sqladd1="",str1, str2;
str1=m_TrainCode_Edit;
// AfxMessageBox(str1);
str2=m_OriStationEn_Edit;
str1.TrimRight();
str2.TrimRight();
//读取文本框中的数据并赋值给定义的字符串
((CEdit *)GetDlgItem(IDC_EDIT1))->GetWindowText(sTrainCode);
// AfxMessageBox(sTrainCode);
((CEdit *)GetDlgItem(IDC_EDIT2))->GetWindowText(sOriginalStationEn);
((CEdit *)GetDlgItem(IDC_EDIT3))->GetWindowText(sOriginalStationCh);
((CEdit *)GetDlgItem(IDC_EDIT4))->GetWindowText(sLastStationEn);
((CEdit *)GetDlgItem(IDC_EDIT5))->GetWindowText(sLastStationCh);
((CEdit *)GetDlgItem(IDC_EDIT6))->GetWindowText(sPassStationEn);
((CEdit *)GetDlgItem(IDC_EDIT7))->GetWindowText(sPassStationCh);
((CEdit *)GetDlgItem(IDC_EDIT8))->GetWindowText(sStartTime);
((CEdit *)GetDlgItem(IDC_EDIT9))->GetWindowText(sEndTime);
((CEdit *)GetDlgItem(IDC_EDIT10))->GetWindowText(sRunTime);
CString StartHour,StartMin,StartSecond,Startch1="",Startch2="",EndHour,EndMin,EndSecond,\
Endch1="",Endch2="",RunHour,RunMin,RunSecond,Runch1="",Runch2="";
int nStartHour,nStartMin,nStartSecond,nEndHour,nEndMin,nEndSecond,nRunHour,nRunMin,\
nRunSecond;
int sStartTime_len=strlen(sStartTime);
int sEndTime_len=strlen(sEndTime);
int sRunTime_len=strlen(sRunTime);
if(sStartTime_len==8&&(sEndTime_len==8)&&(sRunTime_len==8))//判断时间输入长度是否等于8位
{ //读取时间的小时分钟妙
StartHour=sStartTime.Mid(0,2);
StartMin=sStartTime.Mid(3,2);
StartSecond=sStartTime.Mid(6,2);
Startch1=sStartTime.Mid(2,1);
Startch2=sStartTime.Mid(5,1);
EndHour=sEndTime.Mid(0,2);
EndMin=sEndTime.Mid(3,2);
EndSecond=sEndTime.Mid(6,2);
Endch1=sEndTime.Mid(2,1);
Endch2=sEndTime.Mid(5,1);
RunHour=sRunTime.Mid(0,2);
RunMin=sRunTime.Mid(3,2);
RunSecond=sRunTime.Mid(6,2);
Runch1=sRunTime.Mid(2,1);
Runch2=sRunTime.Mid(5,1);
nStartHour=atoi(StartHour);
nStartMin=atoi(StartMin);
nStartSecond=atoi(StartSecond);
nEndHour=atoi(EndHour);
nEndMin=atoi(EndMin);
nEndSecond=atoi(EndSecond);
nRunHour=atoi(RunHour);
nRunMin=atoi(RunMin);
nRunSecond=atoi(RunSecond);
if((nStartHour>=0)&&(nStartHour<=24)&&(nEndHour>=0)&&(nEndHour<=24)&&(nRunHour>=0)&&(nRunHour<=24)
&&(Startch1==':')&&(Startch2==':')&&(Endch1==':')&&(Endch2==':')&&(Runch1==':')&&(Runch2==':')
&&(nStartMin>=0)&&(nStartMin<=60)&&(nEndMin>=0)&&(nEndMin<=60)&&(nRunMin>=0)&&(nRunMin<=60)
&&(nStartSecond>=0)&&(nStartSecond<=60)&&(nEndSecond>=0)&&(nEndSecond<=60)&&(nRunSecond>=0)&&(nRunSecond<=60))
{
sqlupdate.Format("update RouteList set TrainCode='%s',OriginalStationEn='%s',\
OriginalStationCh='%s',LastStationEn='%s',LastStationCh='%s',\
PassStationEn='%s',PassStationCh='%s',StartTime='%s',EndTime='%s',RunTime='%s' \
where (TrainCode='%s') and (OriginalStationEn='%s')", sTrainCode,\
sOriginalStationEn,sOriginalStationCh,sLastStationEn,sLastStationCh,\
sPassStationEn,sPassStationCh,sStartTime,sEndTime,sRunTime,str1,str2);
sqladd.Format("insert into RouteList(TrainCode,OriginalStationEn,OriginalStationCh,\
LastStationEn,LastStationCh,PassStationEn,PassStationCh,StartTime,EndTime,RunTime)\
values ('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",sTrainCode,\
sOriginalStationEn,sOriginalStationCh,sLastStationEn,sLastStationCh,\
sPassStationEn,sPassStationCh,sStartTime,sEndTime,sRunTime);
// AfxMessageBox(sqladd);
if (m_pConnection.ConnectAccess(mMDB_Path,"sri"))
{
if(m_bADD)//添加数据
m_pConnection.Execute(sqladd);
else
m_pConnection.Execute(sqlupdate);
}//if数据库联接
Sleep(500);//延时,等数据库更改后再执行下面语句
CEditRouteListDlg::OnOK();//将修改后的数据保存到上一个窗体中的控件中
}//if小时分钟妙输入格式
else
AfxMessageBox("输入格式不正确,请重新输入");
}//if输入长度
else
AfxMessageBox("输入格式不正确,请重新输入");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -