📄 qqview.cpp
字号:
CPoint potstart;
potstart.x=rect.left+nWidth/10;
potstart.y=rect.top+nHeight/10;
if(billinfolookup.bSuccess)//查询数据库成功则进行操作
{
pDC->SetBkMode(TRANSPARENT);//设置背景模式
for(int i=0;i<6;i++)
{
SetBitmapText(potstart.x,potstart.y+20*i,pDC,line[i]);
}
}
///////////////////////////over/////////////////////////
ClientToScreen(&rect);//将客户区域转变成屏幕坐标
m_CurScreenBitmap=::GetScreenBitmap(&rect);
nImgTypeInView=0;//文字背景图
}
void CQQView::OnInfolookEmployer()
{
// TODO: Add your command handler code here
bFirstRun=FALSE;
this->Invalidate();
this->UpdateData(TRUE);
CDC*pDC=GetDC();
CRect rect;
GetClientRect(&rect);
pDC->FillSolidRect(rect,pDC->GetBkColor());
LoadbgroundBitmap(pDC);//画背景
CEmployerInfoLookup employerinfolookup;
employerinfolookup.DoModal();
///////////////////show text/////////////////////
CString line[3];
line[0]="员工编号: ";
line[0]=line[0]+employerinfolookup.EmployerCode;
line[1]="名字: ";
line[1]=line[1]+employerinfolookup.Name;
line[2]="所属部门: ";
line[2]=line[2]+employerinfolookup.Depart;
//////show text
int nWidth=rect.Width();
int nHeight=rect.Height();
CPoint potstart;
potstart.x=rect.left+nWidth/10;
potstart.y=rect.top+nHeight/10;
if(employerinfolookup.bSuccess)//查询数据库成功则进行操作
{
pDC->SetBkMode(TRANSPARENT);//设置背景模式
for(int i=0;i<3;i++)
{
SetBitmapText(potstart.x,potstart.y+20*i,pDC,line[i]);
}
}//over
//////////////////////////////////////////////////////////////////////////
ClientToScreen(&rect);//将客户区域转变成屏幕坐标
m_CurScreenBitmap=::GetScreenBitmap(&rect);//抓取当前客户区图像,为改变
//改变主框架大小时调用
nImgTypeInView=0;//文字背景图
}
void CQQView::OnInfolookFood()
{
// TODO: Add your command handler code here
bFirstRun=FALSE;
this->UpdateData(TRUE);
CDC*pDC=GetDC();
CRect rect;
GetClientRect(&rect);
pDC->FillSolidRect(rect,pDC->GetBkColor());
// pDC->SetBkMode(TRANSPARENT);
LoadbgroundBitmap(pDC);//画背景
int nWidth=rect.Width();
int nHeight=rect.Height();
CPoint potstart;
potstart.x=rect.left+nWidth/10;
potstart.y=rect.top+nHeight/10;
//////////////////////////////////////////////
CFoodInfoSet m_FoodInfoSet;
if(!m_FoodInfoSet.Open(AFX_DB_USE_DEFAULT_TYPE))
{
MessageBox("连接数据库失败或数据库为空!","数据库错误",MB_OK);
return ;
}
m_FoodInfoSet.MoveFirst();//to the first
int i=0;
while(!m_FoodInfoSet.IsEOF())
{
CString foodname,foodprice,strShowText;
foodname=m_FoodInfoSet.m_FoodName;
foodprice.Format("%5.0f",m_FoodInfoSet.m_FoodPrice);
strShowText=foodname+": "+ foodprice;
pDC->SetBkMode(TRANSPARENT);//设置背景模式
SetBitmapText(potstart.x,potstart.y+20*i,pDC,strShowText);
m_FoodInfoSet.MoveNext();//next
i++;
}
m_FoodInfoSet.Close();
ClientToScreen(&rect);//将客户区域转变成屏幕坐标
m_CurScreenBitmap=::GetScreenBitmap(&rect);
nImgTypeInView=0;//文字背景图
}
void CQQView::OnInfolookRoom()
{
// TODO: Add your command handler code here
bFirstRun=FALSE;
this->Invalidate();
this->UpdateData(TRUE);
CDC*pDC=GetDC();
CRect rect;
GetClientRect(&rect);
pDC->FillSolidRect(rect,pDC->GetBkColor());
LoadbgroundBitmap(pDC);//画背景
CRoomInfoLookup roominfolookup;
roominfolookup.DoModal();
///////////////////////////////////////////////////////////////
CString line[7];
line[0]="房间号: ";
line[0]=line[0]+roominfolookup.RoomCode;
line[1]="房间类型: ";
line[1]=line[1]+roominfolookup.RoomType;
line[2]="房间所在楼层: ";
CString str;str.Format("%d",roominfolookup.Floor);
line[2]=line[2]+str;
line[3]="房间电话号码: ";
line[3]=line[3]+roominfolookup.Phone;
line[4]="房间状态: ";
line[4]=line[4]+roominfolookup.RoomStatus;
line[5]="是/否团队客人成员: ";
if(roominfolookup.PriceType)
{
line[5]=line[5]+"是";
}
else{ line[5]=line[5]+"否";}
line[6]="房间单位时间价格: ";
str.Format("%5.00f",roominfolookup.Price);
line[6]=line[6]+str;
///////showtext
int nWidth=rect.Width();
int nHeight=rect.Height();
CPoint potstart;
potstart.x=rect.left+nWidth/10;
potstart.y=rect.top+nHeight/10;
if(roominfolookup.bSuccess)//查询数据库成功则进行操作
{
pDC->SetBkMode(TRANSPARENT);//设置背景模式
for(int i=0;i<7;i++)
{
SetBitmapText(potstart.x,potstart.y+20*i,pDC,line[i]);
}
}//over
ClientToScreen(&rect);//将客户区域转变成屏幕坐标
m_CurScreenBitmap=::GetScreenBitmap(&rect);
nImgTypeInView=0;//文字背景图
}
void CQQView::OnInfolookServer()
{
// TODO: Add your command handler code here
bFirstRun=FALSE;
this->UpdateData(TRUE);
CDC*pDC=GetDC();
CRect rect;
GetClientRect(&rect);
pDC->FillSolidRect(rect,pDC->GetBkColor());
LoadbgroundBitmap(pDC);//画背景
int nWidth=rect.Width();
int nHeight=rect.Height();
CPoint potstart;
potstart.x=rect.left+nWidth/10;
potstart.y=rect.top+nHeight/10;
//////////////////////////////////////////////
CServerInfoSet m_ServerInfoSet;
if(!m_ServerInfoSet.Open(AFX_DB_USE_DEFAULT_TYPE))
{
MessageBox("连接数据库失败或数据库为空!","数据库错误",MB_OK);
return ;
}
m_ServerInfoSet.MoveFirst();//to the first
int i=0;
while(!m_ServerInfoSet.IsEOF())
{
CString servername,serverprice,strShowText;
servername=m_ServerInfoSet.m_ServerName;
serverprice.Format("%5.0f",m_ServerInfoSet.m_ServerPrice);
strShowText=servername+": "+ serverprice;
pDC->SetBkMode(TRANSPARENT);//设置背景模式
SetBitmapText(potstart.x,potstart.y+20*i,pDC,strShowText);
m_ServerInfoSet.MoveNext();//next
i++;
}
m_ServerInfoSet.Close();
ClientToScreen(&rect);//将客户区域转变成屏幕坐标
m_CurScreenBitmap=::GetScreenBitmap(&rect);
nImgTypeInView=0;//文字背景图
}
void CQQView::OnInfolookConsume()
{
// TODO: Add your command handler code here
bFirstRun=FALSE;
}
//#####################################################################
void CQQView::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
// CGuestInfoLookup guestinfolookup;
// CDC* pDC=GetDC();//得到DC
////////////////////主要处理消息查询的显示
//////////////////////////////////////////////////////////////////////
/*********************************************************************
客人消息查询显示
*********************************************************************/
/////////////////////////////////////////////////////////////////////
CView::OnTimer(nIDEvent);
}
BOOL CQQView::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default
return CView::OnEraseBkgnd(pDC);
}
int CQQView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CView::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: Add your specialized creation code here
return 0;
}
/*
* 初始化结构体数据,保存数据到结构体中供其他的地方调用
*/
static LPTSTR strText[]=
{
"本酒店全名:华天大酒店,属于国家五星级大酒店\n是湖南地区最大的酒店",
"客房部主要负责酒店的房间管理\n已经和房间有关的工作",
"这是客房部的一个分枝,接待客人的职能",
"管理楼层",
"清洗衣物",
"餐饮部主要负责客人的食物服务\n可进行:点菜,加/换、退菜的工作\n还可以订送餐等服务",
"对餐厅进行管理服务",
"酒吧是餐饮部的分支,为客人提供酒服务",
"康乐部主要负责各种娱乐活动,添加客人在酒店的乐趣",
"洗浴区为用户提供上乘的服务\n这里可以为客人提供洗澡的场所\n还可以泡温水,能让客人得到充分的享受",
"休闲娱乐中心,有舞厅,歌厅,卡拉OK包厢,设施齐全,服务一流",
"财务部主要负责财务的管理,包括:结帐,库存,汇总报表等",
"负责酒店的各种物品的购买",
"存放各种酒店的物品等",
"接收钱物,为客人进行钱物结帐",
NULL
};
void CQQView::InitStructData()
{
RANGLEITEMSINFO* pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=0;
pInfo->x1=126;pInfo->y1=8;
pInfo->x2=206;pInfo->y2=45;
pInfo->strContentText=strText[0];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=1;
pInfo->x1=29;pInfo->y1=57;
pInfo->x2=99;pInfo->y2=88;
pInfo->strContentText=strText[1];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=2;
pInfo->x1=106;pInfo->y1=57;
pInfo->x2=170;pInfo->y2=88;
pInfo->strContentText=strText[5];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=3;
pInfo->x1=176;pInfo->y1=57;
pInfo->x2=240;pInfo->y2=88;
pInfo->strContentText=strText[8];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=4;
pInfo->x1=245;pInfo->y1=57;
pInfo->x2=315;pInfo->y2=88;
pInfo->strContentText=strText[11];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=5;
pInfo->x1=17;pInfo->y1=107;
pInfo->x2=42;pInfo->y2=170;
pInfo->strContentText=strText[2];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=6;
pInfo->x1=47;pInfo->y1=107;
pInfo->x2=77;pInfo->y2=171;
pInfo->strContentText=strText[3];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=7;
pInfo->x1=83;pInfo->y1=110;
pInfo->x2=108;pInfo->y2=172;
pInfo->strContentText=strText[4];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=8;
pInfo->x1=113;pInfo->y1=112;
pInfo->x2=137;pInfo->y2=173;
pInfo->strContentText=strText[6];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=9;
pInfo->x1=142;pInfo->y1=112;
pInfo->x2=168;pInfo->y2=173;
pInfo->strContentText=strText[7];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=10;
pInfo->x1=172;pInfo->y1=112;
pInfo->x2=201;pInfo->y2=173;
pInfo->strContentText=strText[9];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=11;
pInfo->x1=210;pInfo->y1=112;
pInfo->x2=232;pInfo->y2=173;
pInfo->strContentText=strText[10];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=12;
pInfo->x1=240;pInfo->y1=112;
pInfo->x2=263;pInfo->y2=174;
pInfo->strContentText=strText[12];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=13;
pInfo->x1=269;pInfo->y1=112;
pInfo->x2=294;pInfo->y2=173;
pInfo->strContentText=strText[13];
m_List.AddTail(pInfo);
pInfo=new RANGLEITEMSINFO;
pInfo->nIndex=14;
pInfo->x1=300;pInfo->y1=111;
pInfo->x2=327;pInfo->y2=174;
pInfo->strContentText=strText[14];
m_List.AddTail(pInfo);
}
void CQQView::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
if(nImgTypeInView==12)
{
for(int i=0;i<15;i++)
{
CRect rect(page3.pntArray[i*2],page3.pntArray[2*i+1]);
if(rect.PtInRect(point))
{ //若采用CHotoelInfoShow的方法来显示信息,总算存在背景的擦除问题
//当采用动画的形式显示信息,退出对话框后,这个对话框的背景被重画
//背景被擦除,不能保持图像的一致
// [6/29/2003-9:59]
// CHotelInfoShow pHotelInfo;
// pHotelInfo.lpszShowText=strText[i];
// pHotelInfo.DoModal();
MessageBox(strText[i],"酒店信息介绍",MB_OK);
}
}
}
if(nImgTypeInView==13)
{//当前视图区显示的是“酒店概况”图像
CRect rect;
GetClientRect(&rect);
pnt=point;
CPoint pnt=page3.GetImgOrgPoint();//得到当前的图像原点
int n=m_List.GetCount();
for(int i=0;i<n;i++)
{
RANGLEITEMSINFO* pRangleInfo;
POSITION pos=m_List.FindIndex(i);
pRangleInfo=m_List.GetAt(pos);
CRect rect(pRangleInfo->x1+pnt.x,pRangleInfo->y1+pnt.y,pRangleInfo->x2+pnt.x,pRangleInfo->y2+pnt.y);
if(rect.PtInRect(point))
{
//弹出消息,提示给用户关于酒店的情况
MessageBox(pRangleInfo->strContentText,"酒店情况介绍",MB_OK);
// CHotelInfoShow pHotelInfo;
// pHotelInfo.lpszShowText=pRangleInfo->strContentText;
// pHotelInfo.pntCenter=point;
// pHotelInfo.DoModal();
}
}
}
CView::OnLButtonDown(nFlags, point);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -