⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 煤气取样过程计算机模拟view.cpp

📁 本程序是利用VC开发的炼钢炉煤气取样过程的图形化监控程序。界面中的自动演示按钮可以演示整个取样过程。
💻 CPP
📖 第 1 页 / 共 5 页
字号:

void CMyView::ShowBallValve()
{
CDC * pDC;
pDC=GetDC();

//CBitmap BitBMP1,BitBMP2;

//BitBMP1.LoadBitmap(IDB_BITMAP20);//ball valve close
//BitBMP2.LoadBitmap(IDB_BITMAP21);//ball valve open

CDC ImageDC;
ImageDC.CreateCompatibleDC(pDC);

	//if(((FarFire_X2==0)&&(Ball_X3==0))||((FarFire_X2==1)&&(Ball_X3==0))) 
      if(Ball_X3==0)
{
	ImageDC.SelectObject(&BitBMP8); //close
	BitBlt(pDC->m_hDC, 706, 448, 49, 33, ImageDC.m_hDC, 0, 0, SRCCOPY);
    BallVa_showCoun=0;
}
//if((FarFire_X2==0)&&(Ball_X3==1)&&(BallVa_showCoun<1))
     if(Ball_X3==1)
{
	ImageDC.SelectObject(&BitBMP9); //open
    BitBlt(pDC->m_hDC, 706, 448, 49, 33, ImageDC.m_hDC, 0, 0, SRCCOPY);
	BallVa_showCoun++;
}

//BitBlt(pDC->m_hDC, 706, 448, 49, 33, ImageDC.m_hDC, 0, 0, SRCCOPY);

ReleaseDC(pDC);
ImageDC.DeleteDC();
}

void CMyView::OnExitButton17() 
{
	// TODO: Add your control notification handler code here
	if(MessageBox("  真的要退出吗?","提示",MB_YESNO)==IDYES)
	{
	  KillTimer(1);
	  KillTimer(2);
	  KillTimer(3);
	
	  if (m_OnCom1.GetPortOpen())
	  m_OnCom1.SetPortOpen(FALSE);

	  Brush1.DeleteObject();
      Pen1.DeleteObject();
	  Brush2.DeleteObject();
      Pen2.DeleteObject();

	  pDC->SelectObject(pOldBrush);
      pDC->SelectObject(pOldPen);

      BitBMP1.DeleteObject();
	  BitBMP2.DeleteObject();
	  BitBMP3.DeleteObject();
	  BitBMP4.DeleteObject();
	  BitBMP5.DeleteObject();
	  BitBMP6.DeleteObject();
	  BitBMP7.DeleteObject();
	  BitBMP8.DeleteObject();
	  BitBMP9.DeleteObject();
	  BitBMP10.DeleteObject();
	  BitBMP11.DeleteObject();
	  BitBMP12.DeleteObject();
	  BitBMP13.DeleteObject();
	  BitBMP14.DeleteObject();
	  BitBMP15.DeleteObject();
	  BitBMP16.DeleteObject();
	  BitBMP17.DeleteObject();
	  
	  if(pDC!=NULL) ReleaseDC(pDC);
  	  		
	  AfxGetMainWnd()->SendMessage(WM_CLOSE);
	  
	}
	
}

void CMyView::ShowF11Gas()
{

CDC * pDC;
pDC=GetDC();

/*CBitmap BitBMP10,BitBMP11,BitBMP12,BitBMP13,BitBMP14,BitBMP15;

BitBMP10.LoadBitmap(IDB_BITMAP2);// vertical red gas
BitBMP11.LoadBitmap(IDB_BITMAP18);//horizontal red gas
BitBMP12.LoadBitmap(IDB_BITMAP8);//horizontal hide gas
BitBMP14.LoadBitmap(IDB_BITMAP3);//horizontal whole hide gas
BitBMP13.LoadBitmap(IDB_BITMAP14);//vertical hide gas
BitBMP15.LoadBitmap(IDB_BITMAP19);//vertical whole hide gas
*/

CDC ImageDC;
ImageDC.CreateCompatibleDC(pDC);

   
	if(AntiSweepValve_F11==1) //反吹电磁阀开启
    {
       if(F11_region1==1) //region1
	  {
	      F11gas_X1=F11gas_X;
		  F11gas_X=F11gas_X+2;
		  //horizontal and hide
		  ImageDC.SelectObject(&BitBMP11);
          BitBlt(pDC->m_hDC, F11gas_X, F11gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
          ImageDC.SelectObject(&BitBMP12);
          BitBlt(pDC->m_hDC, F11gas_X1, F11gas_Y, 2, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);

		  if(F11gas_X>=92)
		  {
			F11_region1=0;
            F11_region2=1;
		    F11_region3=0;
		    F11_region4=0;
            F11_region5=0;
            //special process 
			ImageDC.SelectObject(&BitBMP14);
            BitBlt(pDC->m_hDC, F11gas_X,F11gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
            F11gas_X=109;
		  }
	  }

      if(F11_region2==1) //region2
	  {
		  F11gas_Y1=F11gas_Y;
		  F11gas_Y=F11gas_Y+2;
		  //vertical and hide
		  ImageDC.SelectObject(&BitBMP10);
          BitBlt(pDC->m_hDC, F11gas_X, F11gas_Y, 4, 20, ImageDC.m_hDC, 0, 0, SRCCOPY);
          ImageDC.SelectObject(&BitBMP13);
          BitBlt(pDC->m_hDC, F11gas_X, F11gas_Y1, 4, 2, ImageDC.m_hDC, 0, 0, SRCCOPY);
          
		  if(F11gas_Y>=340)
		  {
			F11_region1=0;
            F11_region2=0;
		    F11_region3=1;
		    F11_region4=0;
			F11_region5=0;

			//special process 
			ImageDC.SelectObject(&BitBMP15);
            BitBlt(pDC->m_hDC, F11gas_X,F11gas_Y, 4, 20, ImageDC.m_hDC, 0, 0, SRCCOPY);
          
			F11gas_Y=367;
            			
		  }
      }
	  
      if(F11_region3==1)  //region3
	  {
	        F11gas_X1=F11gas_X;
		    F11gas_X=F11gas_X+2;
		    //horizontal and hide
		    ImageDC.SelectObject(&BitBMP11);
            BitBlt(pDC->m_hDC, F11gas_X, F11gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
            ImageDC.SelectObject(&BitBMP12);
            BitBlt(pDC->m_hDC, F11gas_X1, F11gas_Y, 2, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
		 
		   if(F11gas_X>=128)
		   {
			 F11_region1=0;
             F11_region2=0;
		     F11_region3=0;
		     F11_region4=1;
			 F11_region5=0;
            //special process 
			 ImageDC.SelectObject(&BitBMP14);
             BitBlt(pDC->m_hDC, F11gas_X,F11gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
             
			 F11gas_X=149;
			 F11gas_Y=370;
		   }
		  
	  }

      if(F11_region4==1) //region4
	  {
		  F11gas_Y1=F11gas_Y;
		  F11gas_Y=F11gas_Y+2;
		  //vertical and hide
		  ImageDC.SelectObject(&BitBMP10);
          BitBlt(pDC->m_hDC, F11gas_X, F11gas_Y, 4, 20, ImageDC.m_hDC, 0, 0, SRCCOPY);
          ImageDC.SelectObject(&BitBMP13);
          BitBlt(pDC->m_hDC, F11gas_X, F11gas_Y1, 4, 2, ImageDC.m_hDC, 0, 0, SRCCOPY);
          
		  if(F11gas_Y>=385)
		  {
			F11_region1=0;
            F11_region2=0;
		    F11_region3=0;
		    F11_region4=0;
			F11_region5=1;

			//special process 
			ImageDC.SelectObject(&BitBMP15);
            BitBlt(pDC->m_hDC, F11gas_X,F11gas_Y, 4, 20, ImageDC.m_hDC, 0, 0, SRCCOPY);
            			
			F11gas_Y=460;
            F11gas_X=169;
			
		  }
      }

         if(F11_region5==1) //region5
	  {
	      F11gas_X1=F11gas_X;
		  F11gas_X=F11gas_X+2;
		  //horizontal and hide
		  ImageDC.SelectObject(&BitBMP11);
          BitBlt(pDC->m_hDC, F11gas_X, F11gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
          ImageDC.SelectObject(&BitBMP12);
          BitBlt(pDC->m_hDC, F11gas_X1, F11gas_Y, 2, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);

		  if(F11gas_X>=(Pipe_X+454))
		  {
			F11_region1=1;
            F11_region2=0;
		    F11_region3=0;
		    F11_region4=0;
            F11_region5=0;
            //special process 
			ImageDC.SelectObject(&BitBMP14);
            BitBlt(pDC->m_hDC, F11gas_X,F11gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
            F11gas_X=88;
            F11gas_X1=86;
            F11gas_Y=163;
            F11gas_Y1=161;
		  }
	  }

    }
	else //反吹电磁阀关闭
	{
     	F11gas_X1=86;
		F11gas_X=88;
		F11gas_Y1=161;
		F11gas_Y=163;
		
		F11_region1=1;
        F11_region2=0;
		F11_region3=0;
		F11_region4=0;
        F11_region5=0;
	}

ReleaseDC(pDC);
ImageDC.DeleteDC();
}

void CMyView::ShowF5CaptureGas()
{
CDC * pDC;
pDC=GetDC();

/*CBitmap BitBMP10,BitBMP11,BitBMP12,BitBMP13,BitBMP14,BitBMP15;

BitBMP10.LoadBitmap(IDB_BITMAP2);// vertical red gas
BitBMP11.LoadBitmap(IDB_BITMAP18);//horizontal red gas
BitBMP12.LoadBitmap(IDB_BITMAP8);//horizontal hide gas
BitBMP14.LoadBitmap(IDB_BITMAP3);//horizontal whole hide gas
BitBMP13.LoadBitmap(IDB_BITMAP14);//vertical hide gas
BitBMP15.LoadBitmap(IDB_BITMAP19);//vertical whole hide gas
*/
CDC ImageDC;
ImageDC.CreateCompatibleDC(pDC);

	if(CaptureValve_F5==1)
	{
        if(F5_region1==1) //region1
	  {
	      F5gas_X1=F5gas_X+18;
		  F5gas_X=F5gas_X-2;
		  //horizontal and hide
		  ImageDC.SelectObject(&BitBMP11);
          BitBlt(pDC->m_hDC, F5gas_X, F5gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
          ImageDC.SelectObject(&BitBMP12);
          BitBlt(pDC->m_hDC, F5gas_X1, F5gas_Y, 2, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);

		  if(F5gas_X<=169)
		  {
			F5_region1=0;
            F5_region2=1;
		    F5_region3=0;
		    F5_region4=0;
            
            //special process 
			ImageDC.SelectObject(&BitBMP14);
            BitBlt(pDC->m_hDC, F5gas_X,F5gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
            F5gas_X=149;
            F5gas_Y=386;
		  }
	  }

        if(F5_region2==1) //region2
	  {
		  F5gas_Y1=F5gas_Y+18;
		  F5gas_Y=F5gas_Y-2;
		  //vertical and hide
		  ImageDC.SelectObject(&BitBMP10);
          BitBlt(pDC->m_hDC, F5gas_X, F5gas_Y, 4, 20, ImageDC.m_hDC, 0, 0, SRCCOPY);
          ImageDC.SelectObject(&BitBMP13);
          BitBlt(pDC->m_hDC, F5gas_X, F5gas_Y1, 4, 2, ImageDC.m_hDC, 0, 0, SRCCOPY);
          
		  if(F5gas_Y<=382)
		  {
			F5_region1=0;
            F5_region2=0;
		    F5_region3=1;
		    F5_region4=0;
		
			//special process 
			ImageDC.SelectObject(&BitBMP15);
            BitBlt(pDC->m_hDC, F5gas_X,F5gas_Y, 4, 20, ImageDC.m_hDC, 0, 0, SRCCOPY);
          
			F5gas_Y=367;
            F5gas_X=125;			
		  }
      }

		if(F5_region3==1)  //region3
	  {
	        F5gas_X1=F5gas_X+18;
		    F5gas_X=F5gas_X-2;
		    //horizontal and hide
		    ImageDC.SelectObject(&BitBMP11);
            BitBlt(pDC->m_hDC, F5gas_X, F5gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
            ImageDC.SelectObject(&BitBMP12);
            BitBlt(pDC->m_hDC, F5gas_X1, F5gas_Y, 2, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
		 
		   if(F5gas_X<=70)
		   {
			 F5_region1=0;
             F5_region2=0;
		     F5_region3=0;
		     F5_region4=1;
			 
            //special process 
		     ImageDC.SelectObject(&BitBMP14);
             BitBlt(pDC->m_hDC, F5gas_X,F5gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
             
			 F5gas_X=68;
			 F5gas_Y=372;
		   }
		  
	  }

         if(F5_region4==1) //region4
	  {
		  F5gas_Y1=F5gas_Y;
		  F5gas_Y=F5gas_Y+2;
		  //vertical and hide
		  ImageDC.SelectObject(&BitBMP10);
          BitBlt(pDC->m_hDC, F5gas_X, F5gas_Y, 4, 20, ImageDC.m_hDC, 0, 0, SRCCOPY);
          ImageDC.SelectObject(&BitBMP13);
          BitBlt(pDC->m_hDC, F5gas_X, F5gas_Y1, 4, 2, ImageDC.m_hDC, 0, 0, SRCCOPY);
          
		  if(F5gas_Y>=415)
		  {
			F5_region1=1;
            F5_region2=0;
		    F5_region3=0;
		    F5_region4=0;
			
			//special process 
			ImageDC.SelectObject(&BitBMP15);
            BitBlt(pDC->m_hDC, F5gas_X,F5gas_Y, 4, 20, ImageDC.m_hDC, 0, 0, SRCCOPY);

			F5gas_X=PipeHead_X-30;
            F5gas_X1=F5gas_X+18;
            F5gas_Y=460;
		  }
      }  

	}////
	else  //取样电磁阀关闭
	{
	/*	if((F5_region1==1)||(F5_region3==1))
	   {
          ImageDC.SelectObject(&BitBMP14);
          BitBlt(pDC->m_hDC, F5gas_X, F5gas_Y, 20, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
	   }

       if((F5_region2==1)||(F5_region4==1))
	   {
          ImageDC.SelectObject(&BitBMP15);
          BitBlt(pDC->m_hDC, F5gas_X, F5gas_Y, 4, 20, ImageDC.m_hDC, 0, 0, SRCCOPY);
	   }
      */ 
	    F5gas_X=PipeHead_X-30;
        F5gas_X1=F5gas_X+18;
        F5gas_Y=460;
		
		F5_region1=1;
        F5_region2=0;
		F5_region3=0;
		F5_region4=0;
        
	}
ReleaseDC(pDC);
ImageDC.DeleteDC();
}


void CMyView::ShowF5AnalysisGas()
{
CDC * pDC;
pDC=GetDC();

/*CBitmap BitBMP1,BitBMP2,BitBMP3;

BitBMP1.LoadBitmap(IDB_ANALYSISGAS);// analysis gas
BitBMP2.LoadBitmap(IDB_BITMAP14);//hide gas
BitBMP3.LoadBitmap(IDB_ANALYSISWHOLEHIDE);//whole hide gas
*/
CDC ImageDC;
ImageDC.CreateCompatibleDC(pDC);

		 if(CaptureValve_F5==1)
	  {
		  F5gas1_Y1=F5gas1_Y;
		  F5gas1_Y=F5gas1_Y+2;
		  //vertical and hide
		  ImageDC.SelectObject(&BitBMP18);
          BitBlt(pDC->m_hDC, F5gas1_X, F5gas1_Y, 4,4, ImageDC.m_hDC, 0, 0, SRCCOPY);
          ImageDC.SelectObject(&BitBMP15);
          BitBlt(pDC->m_hDC, F5gas1_X, F5gas1_Y1, 4, 2, ImageDC.m_hDC, 0, 0, SRCCOPY);
          
		  if(F5gas1_Y>=510)
		  {
			
			//special process 
			ImageDC.SelectObject(&BitBMP16);
            BitBlt(pDC->m_hDC, F5gas1_X,F5gas1_Y, 4, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
          
			F5gas1_X=67;
            F5gas1_Y=488;
            F5gas1_Y1=486;
            			
		  }
      }  
    else  //取样电磁阀关闭
	{
	
	     // ImageDC.SelectObject(&BitBMP16);
         // BitBlt(pDC->m_hDC, F5gas1_X, F5gas1_Y, 4, 4, ImageDC.m_hDC, 0, 0, SRCCOPY);
	   
            F5gas1_X=67;
            F5gas1_Y=488;
            F5gas1_Y1=486;
        
	}
ReleaseDC(pDC);
ImageDC.DeleteDC();

}


void CMyView::OnClose() 
{
	// TODO: Add your message handler code here and/or call default
	  KillTimer(1);
	  KillTimer(2);
	  KillTimer(3);
	  KillTimer(4);
	
	  if (m_OnCom1.GetPortOpen())
	  m_OnCom1.SetPortOpen(FALSE);

	  Brush1.DeleteObject();
      Pen1.DeleteObject();
	  Brush2.DeleteObject();
      Pen2.DeleteObject();

	  pDC->SelectObject(pOldBrush);
      pDC->SelectObject(pOldPen);

      BitBMP1.DeleteObject();
	  BitBMP2.DeleteObject();
	  BitBMP3.DeleteObject();
	  BitBMP4.DeleteObject();
	  BitBMP5.DeleteObject();
	  BitBMP6.DeleteObject();
	  BitBMP7.DeleteObject();
	  BitBMP8.DeleteObject();
	  BitBMP9.DeleteObject();
	  BitBMP10.DeleteObject();
	  BitBMP11.DeleteObject();
	  BitBMP12.DeleteObject();
	  BitBMP13.DeleteObject();
	  BitBMP14.DeleteObject();
	  BitBMP15.DeleteObject();
	  BitBMP16.DeleteObject();
	  BitBMP17.DeleteObject();
	  BitBMP18.DeleteObject();
	  BitBMP19.DeleteObject();
	  BitBMP20.DeleteObject();
	  
	if(pDC!=NULL) ReleaseDC(pDC);
	CFormView::OnClose();
}



void CMyView::OnButton18() 
{
	// TODO: Add your control notification handler code here
	if(AutoDisp==0) 
	{
	  AutoDisp=1;
	  Step1=1;
	}
	else AutoDisp=0;

	InitTime=GetTickCount();
}

void CMyView::OnX3on() 
{
	// TODO: Add your command handler code here
	ModifyMenu(hMenu,ID_X3ON,MF_BYCOMMAND,ID_X3OFF,"X3断");
	if(Ball_X3==0) Ball_X3=1;
}

void CMyView::OnX3off() 
{
	// TODO: Add your command handler code here
	ModifyMenu(hMenu,ID_X3OFF,MF_BYCOMMAND,ID_X3ON,"X3通");
	if(Ball_X3==1) Ball_X3=0;
}

void CMy

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -