📄 travelview.cpp
字号:
// travelView.cpp : CtravelView 类的实现
//
#include "string.h"
#include "stdafx.h"
#include "travel.h"
#include "travelDoc.h"
#include "travelView.h"
#include "TravelData.h"
#include "FLIGHTS.h"
#include "FLIGHTDLG.h"
#include "HOTELS.h"
#include "HOTELSDLG.h"
#include "CARS.h"
#include "CARSDLG.h"
#include "CUSTOMERSDLG.h"
#include "CUSTOMERS.h"
#include "Search.h"
#include "PATHDLG.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// 声明全局变量
TravelData m_dbCust;
//CRecordSet
// CtravelView
IMPLEMENT_DYNCREATE(CtravelView, CView)
BEGIN_MESSAGE_MAP(CtravelView, CView)
// 标准打印命令
ON_COMMAND(ID_FILE_PRINT, &CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT, &CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, &CView::OnFilePrintPreview)
ON_COMMAND(ID_FILE_OPEN, &CtravelView::OnFileConnect)
ON_COMMAND(ID_disconnect, &CtravelView::Ondisconnect)
ON_UPDATE_COMMAND_UI(ID_flight, &CtravelView::OnUpdateflight)
ON_COMMAND(ID_flight, &CtravelView::Onflight)
ON_UPDATE_COMMAND_UI(ID_custom, &CtravelView::OnUpdatecustom)
ON_COMMAND(ID_custom, &CtravelView::Oncustom)
ON_UPDATE_COMMAND_UI(ID_disconnect, &CtravelView::OnUpdatedisconnect)
ON_UPDATE_COMMAND_UI(ID_FILE_OPEN, &CtravelView::OnUpdateFileOpen)
ON_COMMAND(ID_cars, &CtravelView::Oncars)
ON_UPDATE_COMMAND_UI(ID_cars, &CtravelView::OnUpdatecars)
ON_UPDATE_COMMAND_UI(ID_rooms, &CtravelView::OnUpdaterooms)
ON_COMMAND(ID_rooms, &CtravelView::Onrooms)
ON_COMMAND(ID_32787, &CtravelView::OnSearch)
ON_UPDATE_COMMAND_UI(ID_32787, &CtravelView::OnUpdateSearch)
ON_UPDATE_COMMAND_UI(ID_APP_EXIT, &CtravelView::OnUpdateAppExit)
ON_UPDATE_COMMAND_UI(ID_32788, &CtravelView::OnUpdate32788)
ON_COMMAND(ID_32788, &CtravelView::On32788)
END_MESSAGE_MAP()
// CtravelView 构造/析构
CtravelView::CtravelView()
{
// TODO: 在此处添加构造代码
link=0;
}
CtravelView::~CtravelView()
{
}
BOOL CtravelView::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: 在此处通过修改
// CREATESTRUCT cs 来修改窗口类或样式
return CView::PreCreateWindow(cs);
}
// CtravelView 绘制
void CtravelView::OnDraw(CDC* /*pDC*/)
{
CtravelDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;
// TODO: 在此处为本机数据添加绘制代码
}
// CtravelView 打印
BOOL CtravelView::OnPreparePrinting(CPrintInfo* pInfo)
{
// 默认准备
return DoPreparePrinting(pInfo);
}
void CtravelView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: 添加额外的打印前进行的初始化过程
}
void CtravelView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: 添加打印后进行的清除过程
}
// CtravelView 诊断
#ifdef _DEBUG
void CtravelView::AssertValid() const
{
CView::AssertValid();
}
void CtravelView::Dump(CDumpContext& dc) const
{
CView::Dump(dc);
}
CtravelDoc* CtravelView::GetDocument() const // 非调试版本是内联的
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CtravelDoc)));
return (CtravelDoc*)m_pDocument;
}
#endif //_DEBUG
// CtravelView 消息处理程序
void CtravelView::OnFileConnect()//建立连接
{
// TODO: 在此添加命令处理程序代码
m_dbCust.OpenEx(_T("DSN=travel"));
AfxMessageBox(m_dbCust.GetDatabaseName(),0,0);
link=TRUE;
}
void CtravelView::Ondisconnect()//撤销连接
{
// TODO: 在此添加命令处理程序代码
m_dbCust.Close();
AfxMessageBox("已断开连接。");
link=FALSE;
}
void CtravelView::OnUpdateflight(CCmdUI *pCmdUI)
{
pCmdUI->Enable(link);
}
void CtravelView::OnUpdatecustom(CCmdUI *pCmdUI)
{
// TODO: 在此添加命令更新用户界面处理程序代码
pCmdUI->Enable(link);
}
void CtravelView::OnUpdatedisconnect(CCmdUI *pCmdUI)
{
// TODO: 在此添加命令更新用户界面处理程序代码
pCmdUI->Enable(link);
}
void CtravelView::OnUpdateFileOpen(CCmdUI *pCmdUI)
{
// TODO: 在此添加命令更新用户界面处理程序代码
pCmdUI->Enable(!link);
}
void CtravelView::OnUpdatecars(CCmdUI *pCmdUI)
{
// TODO: 在此添加命令更新用户界面处理程序代码
pCmdUI->Enable(link);
}
void CtravelView::OnUpdaterooms(CCmdUI *pCmdUI)
{
// TODO: 在此添加命令更新用户界面处理程序代码
pCmdUI->Enable(link);
}
void CtravelView::OnUpdateSearch(CCmdUI *pCmdUI)
{
// TODO: 在此添加命令更新用户界面处理程序代码
pCmdUI->Enable(link);
}
void CtravelView::OnUpdateAppExit(CCmdUI *pCmdUI)
{
// TODO: 在此添加命令更新用户界面处理程序代码
pCmdUI->Enable(!link);
}
void CtravelView::OnUpdate32788(CCmdUI *pCmdUI)
{
// TODO: 在此添加命令更新用户界面处理程序代码
pCmdUI->Enable(link);
}
void CtravelView::Onflight()//向数据库flight表中存入数据
{
// TODO: 在此添加命令处理程序代码
FLIGHTDLG FlightIN;
FlightIN.DoModal();
CFlights temp;
temp.Open();
temp.AddNew();
temp.SetFieldNull(&(temp.m_flightNum),FALSE);
temp.SetFieldNull(&(temp.m_numAvail),FALSE);
temp.SetFieldNull(&(temp.m_numSeats),FALSE);
temp.SetFieldNull(&(temp.m_ArivCity),FALSE);
temp.SetFieldNull(&(temp.m_FromCity),FALSE);
temp.SetFieldNull(&(temp.m_price),FALSE);
temp.m_price=FlightIN.Price;
temp.m_FromCity=FlightIN.FromCity;
temp.m_ArivCity=FlightIN.ArivCity;
temp.m_numSeats=FlightIN.NumSeats;
temp.m_numAvail=FlightIN.NumAvail;
temp.m_flightNum=FlightIN.FlightNum;
temp.Update();
temp.Requery();
temp.Close();
AfxMessageBox("录入航班信息成功!");
/* CFlightsSet db;
CString temp;
temp.Format(
_T("INSERT INTO FLIGHTS VALUES ('%s', %s, %s, %s, '%s', '%s', 1)"),
flight.mflightNum,
flight.mprice,
flight.mnumSeats,
flight.mnumSeats,
flight.mFromCity,
flight.mAirvCity);
db.Open();
db.m_pDatabase->ExecuteSQL(temp);
db.Close();
*/
//向flight表中插入记录
}
void CtravelView::Oncustom()
{
// TODO: 在此添加命令处理程序代码
HOTELSDLG HotelsDlg;
HotelsDlg.DoModal();
/* CString temp;
temp.Format(
_T("INSERT INTO FLIGHTS VALUSES(1,'%s',%s,%s,%s)"),
HotelsDlg.Location,
HotelsDlg.Price,
HotelsDlg.NumRooms,
HotelsDlg.NumAvail);
CHotels db;
db.Open();
db.m_pDatabase->ExecuteSQL(temp);
db.Close();
*/
CHotels temp;
temp.Open();
temp.AddNew();
temp.SetFieldNull(&(temp.m_location),FALSE);
temp.SetFieldNull(&(temp.m_price),FALSE);
temp.SetFieldNull(&(temp.m_numRooms),FALSE);
temp.SetFieldNull(&(temp.m_numAvail),FALSE);
temp.m_location=HotelsDlg.Location;
temp.m_price=HotelsDlg.Price;
temp.m_numRooms=HotelsDlg.NumRooms;
temp.m_numAvail=HotelsDlg.NumAvail;
temp.Update();
temp.Requery();
temp.Close();
AfxMessageBox("录入宾馆信息成功!");
}
void CtravelView::Oncars()
{
// TODO: 在此添加命令处理程序代码
CARSDLG CarsDlg;
CarsDlg.DoModal();
CCars temp;
temp.Open();
temp.AddNew();
temp.SetFieldNull(&(temp.m_location),FALSE);
temp.SetFieldNull(&(temp.m_price),FALSE);
temp.SetFieldNull(&(temp.m_numCars),FALSE);
temp.SetFieldNull(&(temp.m_numAvail),FALSE);
temp.m_location=CarsDlg.Location;
temp.m_price=CarsDlg.Price;
temp.m_numAvail=CarsDlg.NumAvail;
temp.m_numCars=CarsDlg.NumCars;
temp.Update();
temp.Requery();
temp.Close();
AfxMessageBox("录入汽车成功!");
}
void CtravelView::Onrooms()
{
// TODO: 在此添加命令处理程序代码
CUSTOMERSDLG CustomerDlg;
CustomerDlg.DoModal();
CCustomers temp;
temp.Open();
temp.AddNew();
temp.SetFieldNull(&(temp.m_custName),FALSE);
temp.m_custName=CustomerDlg.CustName;
temp.Update();
temp.Requery();
temp.Close();
AfxMessageBox("录入客户信息成功!");
}
void CtravelView::OnSearch()
{
// TODO: 在此添加命令处理程序代码
Search SearchDlg;
SearchDlg.DoModal();
//SearchDlg.Tab.
}
void CtravelView::On32788()
{
// TODO: 在此添加命令处理程序代码
PATHDLG PathDlg;
PathDlg.DoModal();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -