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

📄 testimage.cpp

📁 波峰焊后台控制软件-中文版
💻 CPP
字号:
// TestImage.cpp : implementation file
//
#include "stdafx.h"
#include "resource.h"
#include "TestImage.h"
#include "FLADS.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CTestImage


extern CFLADSApp theApp;

CTestImage::CTestImage()
{
	flash=0;
}

CTestImage::~CTestImage()
{
    DeleteObject(hbrush);
}


BEGIN_MESSAGE_MAP(CTestImage, CStatic)
	//{{AFX_MSG_MAP(CTestImage)
	ON_WM_PAINT()
	ON_WM_CTLCOLOR()
	ON_WM_CREATE()
	ON_WM_DRAWITEM()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CTestImage message handlers

void CTestImage::OnPaint() 
{
	CPaintDC dc(this); // device context for painting
	
	// TODO: Add your message handler code here
/*	int i,dx,dy;
	unsigned char  ch;
	CString  string;
	CRect    mm_rect;
	
    mm_rect.left=0;
    mm_rect.right=0;
	mm_rect.top=0;
    mm_rect.bottom=0;


	GetClientRect(&m_rectClient);

	dc.SetBkColor(RGB(0, 167, 192));
	dc.SetBkMode(OPAQUE);
    if(theApp.TestFlash!=0)
	{
		theApp.TestFlash=0;
		flash=0;
	}

/*	if(flash==0)
	{
		GetClientRect(&m_rectClient);
		CBrush brush(RGB(0, 167, 192));
		dc.FillRect(m_rectClient, &brush);
	}
*/

/*	CDC memDC;
	memDC.CreateCompatibleDC(&dc);
    CBitmap* pOld;

// 0--------入板光感
// 1--------急停
// 2--------编码信号
// 3--------噴头左限  原点
// 4--------噴头右限  顶点
// 5--------运输马达过载
// 6-------- 
// 7--------排风马达过载
// 8--------波峰马达1
// 9--------波峰马达2
//10--------调机测试
// theApp.yxbuf00=RxdBuffer[6];
// theApp.yxbuf01=RxdBuffer[7];
	LOGFONT lf;
	CFont Font, *PtrOldFont;
   	memset(&lf, 0, sizeof(LOGFONT));
	lf.lfHeight = 24;
	lstrcpy(lf.lfFaceName, _T("宋体"));
	Font.CreateFontIndirect(&lf); 


	PtrOldFont = dc.SelectObject(&Font);//--
	dc.SetTextColor(RGB(0, 0, 0));

   for(i=0;i<11;i++)
   {

   if(i!=6)
   {
	   switch(i)
	   {
		   case  0x00:  dx=0;	    dy=40;
						string=_T("入板光感");
						break;
		   case  0x01:  dx=150*1;	dy=40;
						string=_T("紧急停止");
						break;
		   case  0x02:  dx=150*2;	dy=40;
						string=_T("编码信号");
						break;
		   case  0x03:  dx=150*3;	dy=40;
						string=_T("噴头左限");
						break;
		   case  0x04:  dx=150*4;	dy=40;
						string=_T("噴头右限");
						break;
		   case  0x05:  dx=0;	    dy=120;
						string=_T("运输马达过载");
						break;
		   case  0x07:  dx=150*1;	dy=120;
						string=_T("排风马达过载");
						break;
		   case  0x08:  dx=150*2;	dy=120;
						string=_T("波峰马达1");
						break;
		   case  0x09:  dx=150*3;	dy=120;
						string=_T("波峰马达2");
						break;
		   case  0x0a:  dx=150*4;	dy=120;
						string=_T("调机测试");
						break;
	   }
  
	   if(theApp.krsts(i)!=0)
	   {//绿色
				pOld = memDC.SelectObject(theApp.fillbitmap[164]);
				if (pOld == NULL)return;     // destructors will clean up
				dc.BitBlt(m_rectClient.left+40+dx, m_rectClient.top+dy, m_rectClient.Width(), m_rectClient.Height(),
					&memDC, 0, 0, SRCCOPY);
	   }else
	   {//红色
				pOld = memDC.SelectObject(theApp.fillbitmap[165]);
				if (pOld == NULL)return;     // destructors will clean up
				dc.BitBlt(m_rectClient.left+40+dx, m_rectClient.top+dy, m_rectClient.Width(), m_rectClient.Height(),
					&memDC, 0, 0, SRCCOPY);
	   }
       memDC.SelectObject(pOld);

	   ExtTextOut(dc,m_rectClient.left+15+dx,m_rectClient.top+dy+40,ETO_OPAQUE,&mm_rect,string, string.GetLength(),NULL);
   }

   }//for

	// Do not call CStatic::OnPaint() for painting messages
   ch=theApp.Warn[0];
   ch=ch & 0x01;
   if(ch==0)
   {//通信正常
	   pOld = memDC.SelectObject(theApp.fillbitmap[166]);
	   if (pOld == NULL)return;     // destructors will clean up
	   dc.BitBlt(m_rectClient.left+40, m_rectClient.top+300, m_rectClient.Width(), m_rectClient.Height(),
	   &memDC, 0, 0, SRCCOPY);
       memDC.SelectObject(pOld);
   }else
   {
	   pOld = memDC.SelectObject(theApp.fillbitmap[167]);
	   if (pOld == NULL)return;     // destructors will clean up
	   dc.BitBlt(m_rectClient.left+40, m_rectClient.top+300, m_rectClient.Width(), m_rectClient.Height(),
	   &memDC, 0, 0, SRCCOPY);
       memDC.SelectObject(pOld);
   }

    switch(theApp.A4018_TT)//tt
	{
       case 0x00: string=_T("-15  mV——+15  mV ");
 	              break;
       case 0x01: string=_T("-50  mV——+50  mV");
 	              break;
       case 0x02: string=_T("-100 mV——+100 mV ");
 	              break;
       case 0x03: string=_T("-500 mV——+500 mV");
 	              break;
       case 0x04:  string=_T("-001  V——+001  V");
 	              break;
       case 0x05: string=_T("-02.5 V——+02.5 V");
 	              break;
       case 0x06: string=_T("-020 mA——+020 mA ");
 	              break;
       case 0x0E: string=_T("J 型热电偶    0—760  度 ");
 	              break;
       case 0x0F: string=_T("K 型热电偶    0—1370 度 "); 
 	              break;
       case 0x10:string=_T("T 型热电偶 -100—400  度 ");
 	              break;
       case 0x11: string=_T("E 型热电偶    0—1000 度 "); 
 	              break;
       case 0x12:string=_T("R 型热电偶  500—1750 度 ");
 	              break;
       case 0x13: string=_T("S 型热电偶  500—1750 度 ");
 	              break;
       case 0x14: string=_T("B 型热电偶  500—1800 度 ");
 	              break;
	};
	ExtTextOut(dc,m_rectClient.left+160,m_rectClient.top+300,ETO_OPAQUE,&mm_rect,string, string.GetLength(),NULL);      

    switch(theApp.A4018_CC)
	{
       case 0x03: string=_T("1200  bps ");
 	              break;
       case 0x04: string=_T("2400  bps ");
 	              break;
       case 0x05: string=_T("4800  bps ");
 	              break;
       case 0x06: string=_T("9600  bps ");
 	              break;
       case 0x07: string=_T("19.2K bps ");
 	              break;
       case 0x08: string=_T("38.4K bps ");
 	              break;
	   default:   string=_T("无 ");
		          break;
	};
	ExtTextOut(dc,m_rectClient.left+160,m_rectClient.top+300+25,ETO_OPAQUE,&mm_rect,string, string.GetLength(),NULL);      

	ch=theApp.A4018_FF;
    if((ch & 0x80)==0)
	{
		string=_T("50ms(60HZ power)");

	}else
	{
    	string=_T("60ms(50HZ power)");
	}
	ExtTextOut(dc,m_rectClient.left+160,m_rectClient.top+300+25*2,ETO_OPAQUE,&mm_rect,string, string.GetLength(),NULL);      

	ch=theApp.A4018_FF;
    if((ch & 0x40)==0)
	{
		string=_T("禁止校验");
	}else
	{
    	string=_T("允许校验");
	}
	ExtTextOut(dc,m_rectClient.left+160,m_rectClient.top+300+25*3,ETO_OPAQUE,&mm_rect,string, string.GetLength(),NULL);      

	ch=theApp.A4018_FF;
	ch=ch%4;
    switch(ch)
	{
       case 0x00: string=_T("Engineering  units");
 	              break;
       case 0x01: string=_T("%  of  FSR");
 	              break;
       case 0x02: string=_T("two's  complement of hexadecimal");
 	              break;
       case 0x03: string=_T("Ohms(4013  only)");
 	              break;
	   default:   break;
	};
	ExtTextOut(dc,m_rectClient.left+160,m_rectClient.top+300+25*4,ETO_OPAQUE,&mm_rect,string, string.GetLength(),NULL);      




    dc.SelectObject(PtrOldFont);//++

   flash=0xff;
*/

}




HBRUSH CTestImage::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
	HBRUSH hbr = CStatic::OnCtlColor(pDC, pWnd, nCtlColor);
	
	// TODO: Change any attributes of the DC here
	
	// TODO: Return a different brush if the default is not desired
	return hbrush;
	return hbr;
}

int CTestImage::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CStatic::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	// TODO: Add your specialized creation code here
    hbrush=CreateSolidBrush(RGB(0, 167, 192));
	return 0;
}

void CTestImage::OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct) 
{
	// TODO: Add your message handler code here and/or call default
	AfxMessageBox(_T("OnDrawItem"));
	
	CStatic::OnDrawItem(nIDCtl, lpDrawItemStruct);
}

⌨️ 快捷键说明

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