write_inandout_point.cpp

来自「开发虚拟的被控对象及虚拟的PLC,模似PLC的工作过程进行实验。用户可根据具体的」· C++ 代码 · 共 93 行

CPP
93
字号
#include "StdAfx.h"
#include "PLC_DEMO.h"
#include "PLC_DEMODoc.h"
#include "PLC_DEMOView.h"
#include "choosepoint.h"

bool candrawpoint=false;
CString strinput[8];
CString stroutput[10];
extern Cchoosepoint *forchoose;
extern CPLC_DEMOView *fordraw;

void storepoint()
{
	if(forchoose->m_ninputedit1.IsEmpty()==false)
		strinput[1]=forchoose->m_ninputedit1;
	else strinput[1].Empty();
	if(forchoose->m_ninputedit2.IsEmpty()==false)
		strinput[2]=forchoose->m_ninputedit2;
	else strinput[2].Empty();
	if(forchoose->m_ninputedit3.IsEmpty()==false)
		strinput[3]=forchoose->m_ninputedit3;
	else strinput[3].Empty();
	if(forchoose->m_ninputedit4.IsEmpty()==false)
		strinput[4]=forchoose->m_ninputedit4;
	else strinput[4].Empty();
	if(forchoose->m_ninputedit5.IsEmpty()==false)
		strinput[5]=forchoose->m_ninputedit5;
	else strinput[5].Empty();
	if(forchoose->m_ninputedit6.IsEmpty()==false)
		strinput[6]=forchoose->m_ninputedit6;
	else strinput[6].Empty();
	if(forchoose->m_ninputedit7.IsEmpty()==false)
		strinput[7]=forchoose->m_ninputedit7;
	else strinput[7].Empty();       //输入

	if(forchoose->m_noutputedit1.IsEmpty()==false)
		stroutput[1]=forchoose->m_noutputedit1;
	else stroutput[1].Empty();
	if(forchoose->m_noutputedit2.IsEmpty()==false)
		stroutput[2]=forchoose->m_noutputedit2;
	else stroutput[2].Empty();
	if(forchoose->m_noutputedit3.IsEmpty()==false)
		stroutput[3]=forchoose->m_noutputedit3;
	else stroutput[3].Empty();
	if(forchoose->m_noutputedit4.IsEmpty()==false)
		stroutput[4]=forchoose->m_noutputedit4;
	else stroutput[4].Empty();
	if(forchoose->m_noutputedit5.IsEmpty()==false)
		stroutput[5]=forchoose->m_noutputedit5;
	else stroutput[5].Empty();
	if(forchoose->m_noutputedit6.IsEmpty()==false)
		stroutput[6]=forchoose->m_noutputedit6;
	else stroutput[6].Empty();
	if(forchoose->m_noutputedit7.IsEmpty()==false)
		stroutput[7]=forchoose->m_noutputedit7;
	else stroutput[7].Empty();
	if(forchoose->m_noutputedit8.IsEmpty()==false)
		stroutput[8]=forchoose->m_noutputedit8;
	else stroutput[8].Empty();
	if(forchoose->m_noutputedit9.IsEmpty()==false)
		stroutput[9]=forchoose->m_noutputedit9;
	else stroutput[9].Empty();      //输出
}
void drawpoint()    //将输入输出端点画入视图 
{
	candrawpoint=true;
	CDC* thisDC;
	thisDC=fordraw->GetDC();
	thisDC->SetBkMode(TRANSPARENT);
	CBrush nobrush;
	nobrush.CreateSysColorBrush(COLOR_3DFACE);
	CBrush *oldbrush=thisDC->SelectObject(&nobrush);
	CPoint p(235,250);
	CRect r(p,p);
	r.InflateRect(35,250);
	thisDC->FillRect(r,&nobrush);
	int y=25;
	for(int i=1;i<8;i++)
	{
		thisDC->TextOut(205,y,strinput[i]);
		y=y+26;
	}
	y=280;
	for(i=1;i<10;i++)
	{
		thisDC->TextOut(205,y,stroutput[i]);
        y=y+24;
	}
	thisDC->SelectObject(oldbrush);
	fordraw->ReleaseDC(thisDC);
}

⌨️ 快捷键说明

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