📄 manage_whview.cpp
字号:
pOldFont = pDC->SelectObject(&ftNote);
switch (gpDoc->m_iDeviceKind[i])
{
case 2: pDC->SetBkColor(RGB( 51,255,255)); break;
case 3: pDC->SetBkColor(RGB(255,153,255)); break;
}
pDC->SetTextColor(RGB(0,0,0));
pDC->DrawText(sCount,&rc,DT_BOTTOM|DT_CENTER|DT_SINGLELINE);
pDC->SelectObject(pOldFont);
ftNote.DeleteObject();
}
/* //判断机械手臂当前位置。重画机械手臂
if (i == 24 && m_iRobortArmCurPos == 1) RobortArmStep1(pDC,TRUE);
else if (i == 24 && m_iRobortArmCurPos == 7) RobortArmStep7(pDC,TRUE);
else if (i == 14 && m_iRobortArmCurPos == 5) RobortArmStep5(pDC,TRUE);
else if (i == 17 && m_iRobortArmCurPos == 6) RobortArmStep6(pDC,TRUE);
else if (i == 12 && m_iThreeCoordinateCurPos == 2) ThreeCoordinateStep2(pDC,TRUE);
else if (i == 19 && m_iThreeCoordinateCurPos == 3) ThreeCoordinateStep3(pDC,TRUE);*/
}
}
//画堆垛机
pDC->SelectStockObject(NULL_PEN);
pOldBrush = pDC->SelectObject(&this->m_liftBrush);
pDC->Rectangle((int)(m_W*gpDoc->m_dLiftPosX1Arra[gpDoc->m_iLiftStatus]),
(int)(m_H*0.507),
(int)(m_W*gpDoc->m_dLiftPosX2Arra[gpDoc->m_iLiftStatus]),
(int)(m_H*0.546));
//画LGV
this->DrawLGVStatus(pDC,gpDoc->m_iLGVPosX,gpDoc->m_iLGVPosY,gpDoc->m_iLGVStatus);
pDC->SelectObject(pOldBrush);
}
void CManage_WHView::RobortArmStep1(CDC *pDC, BOOL bHave)
{
CBrush brushUpRo1,*pOldBrush;
CPen pen1,pen2,pen3,*pOldPen;
pen1.CreatePen(PS_SOLID,10,RGB(255,255,250));
pen2.CreatePen(PS_SOLID,5,RGB(255,255,250));
pen3.CreatePen(PS_SOLID,8,RGB(255,255,250));
brushUpRo1.CreateSolidBrush(RGB(255,255,250));
pOldBrush = pDC->SelectObject(&brushUpRo1);
CRect rcDown,rcUp;
rcDown.SetRect((int)(m_W*0.295),(int)(m_H*0.37),(int)(m_W*0.335),(int)(m_H*0.43));
rcUp.left = (int)(rcDown.left + rcDown.Width() * 0.1);
rcUp.right = (int)(rcDown.left + rcDown.Width() * 0.9);
rcUp.top = (int)(rcDown.top + rcDown.Height() * 0.1);
rcUp.bottom = (int)(rcDown.top + rcDown.Height() * 0.9);
if (bHave)
{
//画六坐标机器人底座
pDC->SelectStockObject(NULL_PEN);
pDC->Ellipse(rcUp);
//画手臂
pOldPen = pDC->SelectObject(&pen1);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.42));
pDC->LineTo((int)(m_W*0.315),(int)(m_H*0.44));
pOldPen = pDC->SelectObject(&pen2);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.44));
pDC->LineTo((int)(m_W*0.315),(int)(m_H*0.48));
pOldPen = pDC->SelectObject(&pen3);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.48));
pDC->LineTo((int)(m_W*0.315),(int)(m_H*0.49));
//六坐标机器人当前位置为 1
m_iRobortArmCurPos = 1;
}
else
{
int iMode = pDC->GetROP2();
pDC->SetROP2(R2_NOTCOPYPEN);
//画六坐标机器人底座
pDC->SelectStockObject(NULL_PEN);
pDC->Ellipse(rcUp);
pOldPen = pDC->SelectObject(&pen1);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.42));
pDC->LineTo((int)(m_W*0.315),(int)(m_H*0.44));
pOldPen = pDC->SelectObject(&pen2);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.44));
pDC->LineTo((int)(m_W*0.315),(int)(m_H*0.48));
pOldPen = pDC->SelectObject(&pen3);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.48));
pDC->LineTo((int)(m_W*0.315),(int)(m_H*0.49));
pDC->SetROP2(iMode);
if (gpDoc->m_iDeviceStatusArra[24] == 1)
{
pOldBrush = pDC->SelectObject(&this->m_haveTrayBrush);
pDC->SelectStockObject(NULL_PEN);
rcDown.SetRect((int)(m_W*0.29),(int)(m_H*0.44),(int)(m_W*0.34),(int)(m_H*0.55));
rcUp.left = (int)(rcDown.left + rcDown.Width() * 0.2);
rcUp.right = (int)(rcDown.left + rcDown.Width() * 0.9);
rcUp.top = (int)(rcDown.top + rcDown.Height() * 0.2);
rcUp.bottom = (int)(rcDown.top + rcDown.Height() * 0.9);
pDC->Rectangle(rcUp);
CString sNowNum;
sNowNum.Format("%d",gpDoc->m_iNowNum[24]);
LOGFONT nFont;
memset(&nFont,0,sizeof(LOGFONT));
nFont.lfHeight = 15; //字高
lstrcpy(nFont.lfFaceName,"Arial"); //设置字体
CFont ftNote,*pOldFont;
ftNote.CreateFontIndirect(&nFont);
pOldFont = pDC->SelectObject(&ftNote);
pDC->SetBkColor(RGB(255,153,255));
pDC->SetTextColor(RGB(0,0,0));
pDC->DrawText(sNowNum,&rcUp,DT_BOTTOM|DT_CENTER|DT_SINGLELINE);
pDC->SelectObject(pOldFont);
ftNote.DeleteObject();
}
pOldPen = pDC->SelectObject(&m_pen);
pDC->MoveTo((int)(m_W*0.29),(int)(m_H*0.44));
pDC->LineTo((int)(m_W*0.34),(int)(m_H*0.44));
}
pDC->SelectObject(pOldPen);
pDC->SelectObject(pOldBrush);
pen1.DeleteObject();
pen2.DeleteObject();
pen3.DeleteObject();
brushUpRo1.DeleteObject();
}
void CManage_WHView::RobortArmStep2(CDC *pDC, BOOL bHave)
{
CBrush brushUpRo1,*pOldBrush;
CPen pen1,pen2,pen3,*pOldPen;
pen1.CreatePen(PS_SOLID,10,RGB(255,255,250));
pen2.CreatePen(PS_SOLID,5,RGB(255,255,250));
pen3.CreatePen(PS_SOLID,8,RGB(255,255,250));
brushUpRo1.CreateSolidBrush(RGB(255,255,250));
pOldBrush = pDC->SelectObject(&brushUpRo1);
CRect rcDown,rcUp;
rcDown.SetRect((int)(m_W*0.295),(int)(m_H*0.37),(int)(m_W*0.335),(int)(m_H*0.43));
rcUp.left = (int)(rcDown.left + rcDown.Width() * 0.1);
rcUp.right = (int)(rcDown.left + rcDown.Width() * 0.9);
rcUp.top = (int)(rcDown.top + rcDown.Height() * 0.1);
rcUp.bottom = (int)(rcDown.top + rcDown.Height() * 0.9);
if (bHave)
{
//画六坐标机器人底座
pDC->SelectStockObject(NULL_PEN);
pDC->Ellipse(rcUp);
pOldPen = pDC->SelectObject(&pen1);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.4));
pDC->LineTo((int)(m_W*0.33),(int)(m_H*0.415));
pOldPen = pDC->SelectObject(&pen2);
pDC->MoveTo((int)(m_W*0.33),(int)(m_H*0.415));
pDC->LineTo((int)(m_W*0.355),(int)(m_H*0.445));
pOldPen = pDC->SelectObject(&pen3);
pDC->MoveTo((int)(m_W*0.355),(int)(m_H*0.445));
pDC->LineTo((int)(m_W*0.36),(int)(m_H*0.45));
this->m_iRobortArmCurPos = 2;
}
else
{
int iMode = pDC->GetROP2();
pDC->SetROP2(R2_NOTCOPYPEN);
//画六坐标机器人底座
pDC->SelectStockObject(NULL_PEN);
pDC->Ellipse(rcUp);
pOldPen = pDC->SelectObject(&pen1);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.4));
pDC->LineTo((int)(m_W*0.33),(int)(m_H*0.415));
pOldPen = pDC->SelectObject(&pen2);
pDC->MoveTo((int)(m_W*0.33),(int)(m_H*0.415));
pDC->LineTo((int)(m_W*0.355),(int)(m_H*0.445));
pOldPen = pDC->SelectObject(&pen3);
pDC->MoveTo((int)(m_W*0.355),(int)(m_H*0.445));
pDC->LineTo((int)(m_W*0.36),(int)(m_H*0.45));
//将当前位置的状态置0
CAdoConnection cn;
cn.OpenUDLFile(gstrConSQLSer);
cn.Execute("UPDATE T_Device_Site_State SET F_State=0 WHERE F_Index=1",adCmdText);
cn.Close();
rcDown.SetRect((int)(m_W*0.35),(int)(m_H*0.44),(int)(m_W*0.38),(int)(m_H*0.47));
rcUp.left = (int)(rcDown.left + rcDown.Width() * 0.2);
rcUp.right = (int)(rcDown.left + rcDown.Width() * 0.9);
rcUp.top = (int)(rcDown.top + rcDown.Height() * 0.2);
rcUp.bottom = (int)(rcDown.top + rcDown.Height() * 0.9);
pDC->Rectangle(rcUp);
pDC->SetROP2(iMode);
pOldPen = pDC->SelectObject(&m_pen);
pDC->MoveTo((int)(m_W*0.38),(int)(m_H*0.47));
pDC->LineTo((int)(m_W*0.35),(int)(m_H*0.47));
pDC->LineTo((int)(m_W*0.35),(int)(m_H*0.44));
pDC->LineTo((int)(m_W*0.38),(int)(m_H*0.44));
gpDoc->m_iDeviceStatusArra[0] = 0;
}
pDC->SelectObject(pOldPen);
pDC->SelectObject(pOldBrush);
pen1.DeleteObject();
pen2.DeleteObject();
pen3.DeleteObject();
brushUpRo1.DeleteObject();
}
void CManage_WHView::RobortArmStep3(CDC *pDC, BOOL bHave)
{
CBrush brushUpRo1,*pOldBrush;
CPen pen1,pen2,pen3,*pOldPen;
pen1.CreatePen(PS_SOLID,10,RGB(255,255,250));
pen2.CreatePen(PS_SOLID,5,RGB(255,255,250));
pen3.CreatePen(PS_SOLID,8,RGB(255,255,250));
brushUpRo1.CreateSolidBrush(RGB(255,255,250));
pOldBrush = pDC->SelectObject(&brushUpRo1);
CRect rcDown,rcUp;
rcDown.SetRect((int)(m_W*0.295),(int)(m_H*0.37),(int)(m_W*0.335),(int)(m_H*0.43));
rcUp.left = (int)(rcDown.left + rcDown.Width() * 0.1);
rcUp.right = (int)(rcDown.left + rcDown.Width() * 0.9);
rcUp.top = (int)(rcDown.top + rcDown.Height() * 0.1);
rcUp.bottom = (int)(rcDown.top + rcDown.Height() * 0.9);
if (bHave)
{
//画六坐标机器人底座
pDC->SelectStockObject(NULL_PEN);
pDC->Ellipse(rcUp);
pOldPen = pDC->SelectObject(&pen1);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.4));
pDC->LineTo((int)(m_W*0.33),(int)(m_H*0.425));
pOldPen = pDC->SelectObject(&pen2);
pDC->MoveTo((int)(m_W*0.33),(int)(m_H*0.425));
pDC->LineTo((int)(m_W*0.36),(int)(m_H*0.475));
pOldPen = pDC->SelectObject(&pen3);
pDC->MoveTo((int)(m_W*0.36),(int)(m_H*0.475));
pDC->LineTo((int)(m_W*0.365),(int)(m_H*0.485));
this->m_iRobortArmCurPos = 3;
}
else
{
int iMode = pDC->GetROP2();
pDC->SetROP2(R2_NOTCOPYPEN);
//画六坐标机器人底座
pDC->SelectStockObject(NULL_PEN);
pDC->Ellipse(rcUp);
pOldPen = pDC->SelectObject(&pen1);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.4));
pDC->LineTo((int)(m_W*0.33),(int)(m_H*0.425));
pOldPen = pDC->SelectObject(&pen2);
pDC->MoveTo((int)(m_W*0.33),(int)(m_H*0.425));
pDC->LineTo((int)(m_W*0.36),(int)(m_H*0.475));
pOldPen = pDC->SelectObject(&pen3);
pDC->MoveTo((int)(m_W*0.36),(int)(m_H*0.475));
pDC->LineTo((int)(m_W*0.365),(int)(m_H*0.485));
CAdoConnection cn;
cn.OpenUDLFile(gstrConSQLSer);
cn.Execute("UPDATE T_Device_Site_State SET F_State=0 WHERE F_Index=4",adCmdText);
cn.Close();
rcDown.SetRect((int)(m_W*0.35),(int)(m_H*0.47),(int)(m_W*0.38),(int)(m_H*0.5));
rcUp.left = (int)(rcDown.left + rcDown.Width() * 0.2);
rcUp.right = (int)(rcDown.left + rcDown.Width() * 0.9);
rcUp.top = (int)(rcDown.top + rcDown.Height() * 0.2);
rcUp.bottom = (int)(rcDown.top + rcDown.Height() * 0.9);
pDC->Rectangle(rcUp);
pDC->SetROP2(iMode);
pOldPen = pDC->SelectObject(&m_pen);
pDC->MoveTo((int)(m_W*0.38),(int)(m_H*0.47));
pDC->LineTo((int)(m_W*0.35),(int)(m_H*0.47));
pDC->LineTo((int)(m_W*0.35),(int)(m_H*0.44));
pDC->MoveTo((int)(m_W*0.38),(int)(m_H*0.5));
pDC->LineTo((int)(m_W*0.35),(int)(m_H*0.5));
pDC->LineTo((int)(m_W*0.35),(int)(m_H*0.47));
pDC->MoveTo((int)(m_W*0.29),(int)(m_H*0.44));
pDC->LineTo((int)(m_W*0.34),(int)(m_H*0.44));
pDC->LineTo((int)(m_W*0.34),(int)(m_H*0.55));
gpDoc->m_iDeviceStatusArra[4] = 0;
}
pDC->SelectObject(pOldPen);
pDC->SelectObject(pOldBrush);
pen1.DeleteObject();
pen2.DeleteObject();
pen3.DeleteObject();
brushUpRo1.DeleteObject();
}
void CManage_WHView::RobortArmStep4(CDC *pDC, BOOL bHave)
{
CBrush brushUpRo1,*pOldBrush;
CPen pen1,pen2,pen3,*pOldPen;
pen1.CreatePen(PS_SOLID,10,RGB(255,255,250));
pen2.CreatePen(PS_SOLID,5,RGB(255,255,250));
pen3.CreatePen(PS_SOLID,8,RGB(255,255,250));
brushUpRo1.CreateSolidBrush(RGB(255,255,250));
pOldBrush = pDC->SelectObject(&brushUpRo1);
CRect rcDown,rcUp;
rcDown.SetRect((int)(m_W*0.295),(int)(m_H*0.37),(int)(m_W*0.335),(int)(m_H*0.43));
rcUp.left = (int)(rcDown.left + rcDown.Width() * 0.1);
rcUp.right = (int)(rcDown.left + rcDown.Width() * 0.9);
rcUp.top = (int)(rcDown.top + rcDown.Height() * 0.1);
rcUp.bottom = (int)(rcDown.top + rcDown.Height() * 0.9);
if (bHave)
{
//画六坐标机器人底座
pDC->SelectStockObject(NULL_PEN);
pDC->Ellipse(rcUp);
pOldPen = pDC->SelectObject(&pen1);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.4));
pDC->LineTo((int)(m_W*0.33),(int)(m_H*0.435));
pOldPen = pDC->SelectObject(&pen2);
pDC->MoveTo((int)(m_W*0.33),(int)(m_H*0.435));
pDC->LineTo((int)(m_W*0.355),(int)(m_H*0.5));
pOldPen = pDC->SelectObject(&pen3);
pDC->MoveTo((int)(m_W*0.355),(int)(m_H*0.5));
pDC->LineTo((int)(m_W*0.36),(int)(m_H*0.51));
this->m_iRobortArmCurPos = 4;
}
else
{
int iMode = pDC->GetROP2();
pDC->SetROP2(R2_NOTCOPYPEN);
//画六坐标机器人底座
pDC->SelectStockObject(NULL_PEN);
pDC->Ellipse(rcUp);
pOldPen = pDC->SelectObject(&pen1);
pDC->MoveTo((int)(m_W*0.315),(int)(m_H*0.4));
pDC->LineTo((int)(m_W*0.33),(int)(m_H*0.435));
pOldPen = pDC->SelectObject(&pen2);
pDC->MoveTo((int)(m_W*0.33),(int)(m_H*0.435));
pDC->LineTo((int)(m_W*0.355),(int)(m_H*0.5));
pOldPen = pDC->SelectObject(&pen3);
pDC->MoveTo((int)(m_W*0.355),(int)(m_H*0.5));
pDC->LineTo((int)(m_W*0.36),(int)(m_H*0.51));
CAdoConnection cn;
cn.OpenUDLFile(gstrConSQLSer);
cn.Execute("UPDATE T_Device_Site_State SET F_State=0 WHERE F_Index=7",adCmdText);
cn.Close();
rcDown.SetRect((int)(m_W*0.35),(int)(m_H*0.5),(int)(m_W*0.38),(int)(m_H*0.53));
rcUp.left = (int)(rcDown.left + rcDown.Width() * 0.2);
rcUp.right = (int)(rcDown.left + rcDown.Width() * 0.9);
rcUp.top = (int)(rcDown.top + rcDown.Height() * 0.2);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -