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

📄 fladsview.cpp

📁 波峰焊后台控制软件-英文版
💻 CPP
📖 第 1 页 / 共 2 页
字号:
// FLADSView.cpp : implementation of the CFLADSView class
//

#include "stdafx.h"
#include "FLADS.h"
#include "MainFrm.h"
#include "FLADSDoc.h"
#include "FLADSView.h"
#include "ParaWndDlg.h"
#include "WarnWndDlg.h"
#include "TestWndDlg.h"
#include "SetWndDlg.h"
#include "InfoWndDlg.h"
#include "CurveWndDlg.h"
#include "ConWndDlg.h"
#include "LogonDlg.h"
#include "PlcWndDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CFLADSView

IMPLEMENT_DYNCREATE(CFLADSView, CFormView)

BEGIN_MESSAGE_MAP(CFLADSView, CFormView)
	//{{AFX_MSG_MAP(CFLADSView)
	ON_COMMAND(ID_SET_WINDOWS, OnSetWindows)
	ON_COMMAND(IDC_CONTROL_WINDOWS, OnControlWindows)
	ON_COMMAND(ID_CALLMAINMENU, OnCallmainmenu)
	ON_COMMAND(ID_PARA_WINDOWS, OnParaWindows)
	ON_COMMAND(ID_TEST_WINDOWS, OnTestWindows)
	ON_COMMAND(ID_INFO_WINDOWS, OnInfoWindows)
	ON_COMMAND(ID_WARN_WINDOWS, OnWarnWindows)
	ON_COMMAND(IDC_CURVE_WINDOWS, OnCurveWindows)
	ON_COMMAND(ID_STOP_ALERT, OnStopAlert)
	ON_COMMAND(ID_CLEARFLASHCOUNT, OnClearflashcount)
	ON_WM_DESTROY()
	ON_WM_CREATE()
	ON_COMMAND(ID_FILE_OPEN, OnFileOpen)
	ON_COMMAND(ID_OPEN_FLOPPY, OnOpenFloppy)
	ON_COMMAND(ID_FILE_SAVE_IN, OnFileSaveIn)
	ON_COMMAND(ID_FILE_NEW, OnFileNew)
	ON_COMMAND(ID_FILE_SAVE, OnFileSave)
	ON_COMMAND(ID_ALLCLEAR, OnAllclear)
	ON_COMMAND(ID_DNPAGE, OnDnpage)
	ON_COMMAND(ID_UPPAGE, OnUppage)
	ON_COMMAND(ID_START_SAMPLE, OnStartSample)
	ON_COMMAND(ID_STOP_SAMPLE, OnStopSample)
	ON_COMMAND(ID_LEVEL, OnLevel)
	ON_COMMAND(ID_VERITY, OnVerity)
	ON_COMMAND(ID_ESC, OnEsc)
	ON_COMMAND(ID_LOGON_SET, OnLogonSet)
	ON_COMMAND(ID_LOGON_PARA, OnLogonPara)
	ON_COMMAND(ID_LOGON_EXIT, OnLogonExit)
	ON_COMMAND(ID_PLC, OnPlc)
	ON_MESSAGE(WM_FLASHPLC,OnFlashPlc)	
	//}}AFX_MSG_MAP
	ON_UPDATE_COMMAND_UI(ID_INDICATOR_POSITION, OnUpdateIndicatorPosition)
    ON_UPDATE_COMMAND_UI(ID_INDICATOR_TYPE,OnUpdateIndicatorType)
	ON_UPDATE_COMMAND_UI(ID_INDICATOR_TIMER,OnUpdateIndicatorTimer)
	ON_UPDATE_COMMAND_UI(ID_INDICATOR_TEL,OnUpdateIndicatorTel)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CFLADSView construction/destruction
extern CFLADSApp theApp;

CFLADSView::CFLADSView()
	: CFormView((LPCTSTR)NULL)
{
	//{{AFX_DATA_INIT(CFLADSView)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
	// TODO: add construction code here

}


CFLADSView::~CFLADSView()
{
}

void CFLADSView::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CFLADSView)
		// NOTE: the ClassWizard will add DDX and DDV calls here
	//}}AFX_DATA_MAP
}

BOOL CFLADSView::PreCreateWindow(CREATESTRUCT& cs)
{
	// TODO: Modify the Window class or styles here by modifying
	//  the CREATESTRUCT cs

	return CFormView::PreCreateWindow(cs);
}

/////////////////////////////////////////////////////////////////////////////
// CFLADSView diagnostics

#ifdef _DEBUG
void CFLADSView::AssertValid() const
{
	CFormView::AssertValid();
}

void CFLADSView::Dump(CDumpContext& dc) const
{
	CFormView::Dump(dc);
}

CFLADSDoc* CFLADSView::GetDocument() // non-debug version is inline
{
	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CFLADSDoc)));
	return (CFLADSDoc*)m_pDocument;
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CFLADSView message handlers

void CFLADSView::OnInitialUpdate() 
{
	CFormView::OnInitialUpdate();
	
	// TODO: Add your specialized code here and/or call the base class
	pDlg->ShowWindow(SW_SHOW);
	SetScaleToFitSize(CSize(1, 1));
}

BOOL CFLADSView::Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext) 
{
	// TODO: Add your specialized code here and/or call the base class
	ASSERT(pParentWnd != NULL);
	ASSERT_KINDOF(CFrameWnd, pParentWnd);
	BOOL  bl;

	if (!CWnd::Create(lpszClassName, lpszWindowName, dwStyle | WS_CLIPCHILDREN,
		rect, pParentWnd, nID, pContext))
	{
		return FALSE;
	}
    pParentWnd->ShowWindow(SW_SHOWMAXIMIZED);
	pDlg = new CConWndDlg;
	bl=pDlg->Create(IDD_CON_FORM,this);
    CMainFrame* m_pMainWnd=(CMainFrame*)AfxGetMainWnd(); 
    m_pMainWnd->pFladsView=this;

    return  bl;
//	return CFormView::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, nID, pContext);
}

void CFLADSView::OnSetWindows() 
{//设置窗
	// TODO: Add your command handler code here
	CMainFrame* m_pMainWnd=(CMainFrame*)AfxGetMainWnd(); 
	m_pMainWnd->m_wndToolBar.LoadToolBar(IDR_SETFRAME);   
    m_pMainWnd->pFladsView=this;


	if(theApp.m_UserPower.KeepTime>0)
	{
		if(	theApp.m_UserPower.Operators[theApp.m_UserPower.CurOperatorid].set_enable!=0)
		{
			pDlg->DestroyWindow();
			if(pDlg!=NULL) delete pDlg;
			pDlg = new CSetWndDlg;
			pDlg->Create(IDD_SET_FORM,this);
			pDlg->ShowWindow(SW_SHOWMAXIMIZED);
			return;
		}else
		{
	        AfxMessageBox(_T("No Power!"));
		}
	}else
	{//请登录
		CMainFrame* m_pMainWnd=(CMainFrame*)AfxGetMainWnd(); 
		m_pMainWnd->SendMessage(WM_COMMAND,IDC_LOGON);
	}


}

void CFLADSView::OnControlWindows() 
{//主控窗
	// TODO: Add your command handler code here
	CMainFrame* m_pMainWnd=(CMainFrame*)AfxGetMainWnd(); 
	m_pMainWnd->m_wndToolBar.LoadToolBar(IDR_MAINFRAME);


	pDlg->DestroyWindow();
	if(pDlg!=NULL) delete pDlg;
	pDlg = new CConWndDlg;
	pDlg->Create(IDD_CON_FORM,this);
	pDlg->ShowWindow(SW_SHOWMAXIMIZED);	
}

void CFLADSView::OnCallmainmenu() 
{
	// TODO: Add your command handler code here
    OnControlWindows();
}

void CFLADSView::OnParaWindows() 
{//参数窗
	// TODO: Add your command handler code here
	CMainFrame* m_pMainWnd=(CMainFrame*)AfxGetMainWnd(); 
	if(theApp.m_UserPower.KeepTime>0)
	{
		if(	theApp.m_UserPower.Operators[theApp.m_UserPower.CurOperatorid].para_enable!=0)
		{
			m_pMainWnd->m_wndToolBar.LoadToolBar(IDR_PARAFRAME);
			pDlg->DestroyWindow();
			if(pDlg!=NULL) delete pDlg;
			pDlg = new CParaWndDlg;
			pDlg->Create(IDD_PARA_FORM,this);
			pDlg->ShowWindow(SW_SHOWMAXIMIZED);
			return;
		}else
		{
	        AfxMessageBox(_T("No Power!"));
		}
	}else
	{//请登录
		CMainFrame* m_pMainWnd=(CMainFrame*)AfxGetMainWnd(); 
		m_pMainWnd->SendMessage(WM_COMMAND,IDC_LOGON);
	}

/*	if(theApp.pass_para==2494923)
	{
		m_pMainWnd->m_wndToolBar.LoadToolBar(IDR_PARAFRAME);
		pDlg->DestroyWindow();
		if(pDlg!=NULL) delete pDlg;
		pDlg = new CParaWndDlg;
		pDlg->Create(IDD_PARA_FORM,this);
		pDlg->ShowWindow(SW_SHOWMAXIMIZED);
		return;
	}else
	{
	    CLogonDlg	dlg;
		theApp.logontype=1;
		dlg.DoModal();	
	}
		
	if(theApp.pass_para==2494923)
	{
		m_pMainWnd->m_wndToolBar.LoadToolBar(IDR_PARAFRAME);
		pDlg->DestroyWindow();
		if(pDlg!=NULL) delete pDlg;
		pDlg = new CParaWndDlg;
		pDlg->Create(IDD_PARA_FORM,this);
		pDlg->ShowWindow(SW_SHOWMAXIMIZED);
	}
*/
}

void CFLADSView::OnTestWindows() 
{//测试窗
	// TODO: Add your command handler code here
	CMainFrame* m_pMainWnd=(CMainFrame*)AfxGetMainWnd(); 
	m_pMainWnd->m_wndToolBar.LoadToolBar(IDR_TESTFRAME);
	pDlg->DestroyWindow();
	if(pDlg!=NULL) delete pDlg;
	pDlg = new CTestWndDlg;
	pDlg->Create(IDD_TEST_FORM,this);
	pDlg->ShowWindow(SW_SHOWMAXIMIZED);	
}

void CFLADSView::OnInfoWindows() 
{//信息窗
	// TODO: Add your command handler code here
	CMainFrame* m_pMainWnd=(CMainFrame*)AfxGetMainWnd(); 
	m_pMainWnd->m_wndToolBar.LoadToolBar(IDR_INFOFRAME);

	pDlg->DestroyWindow();
	if(pDlg!=NULL) delete pDlg;
	pDlg = new CInfoWndDlg;
	pDlg->Create(IDD_INFO_FORM,this);
	pDlg->ShowWindow(SW_SHOWMAXIMIZED);	
	
}

void CFLADSView::OnWarnWindows() 
{//告警窗
	// TODO: Add your command handler code here
	CMainFrame* m_pMainWnd=(CMainFrame*)AfxGetMainWnd(); 
	m_pMainWnd->m_wndToolBar.LoadToolBar(IDR_WARNFRAME);

	pDlg->DestroyWindow();
	if(pDlg!=NULL) delete pDlg;
	pDlg = new CWarnWndDlg;
	pDlg->Create(IDD_WARN_FORM,this);
	pDlg->ShowWindow(SW_SHOWMAXIMIZED);	
	
}

void CFLADSView::OnCurveWindows() 
{//曲线窗
	// TODO: Add your command handler code here
	CMainFrame* m_pMainWnd=(CMainFrame*)AfxGetMainWnd(); 
	m_pMainWnd->m_wndToolBar.LoadToolBar(IDR_CURVEFRAME);

	pDlg->DestroyWindow();
	if(pDlg!=NULL) delete pDlg;
	pDlg = new CCurveWndDlg;
	pDlg->Create(IDD_CURVE_FORM,this);
	pDlg->ShowWindow(SW_SHOWMAXIMIZED);	
	
}

void CFLADSView::OnStopAlert() 
{//停止报警
	// TODO: Add your command handler code here
	
}

void CFLADSView::OnClearflashcount() 
{//复位
	// TODO: Add your command handler code here

	 int i,j;
	 double dx,dy,dt;

     theApp.ResetRecord();	
     pDlg->PostMessage(WM_TIMER);

	 theApp.SETRSCASE=0x08;
     theApp.Red_Light_Type=0x00;
	 for(i=0;i<5;i++)
	 {
		 theApp.WeekRunFlag[theApp.sel_week][i]=0;
	     theApp.WeekStopFlag[theApp.sel_week][i]=0;
	 }
	 theApp.reset_mulse=0xff;
	 theApp.reset_count=0;
     theApp.yxtask.BitSetChar(theApp.yxtask.krbuf,126);
	 theApp.YKOUTPUT(YK_RED_LED,YKOFF);

/*	 for(i=0;i<5;i++)
	 {
        if(theApp.WeekSetPM[theApp.sel_week][i]!=0)
		{
			dt=(double)(theApp.Hour*60+theApp.Minute);
			dx=theApp.WeekSetON[theApp.sel_week][i];//开机
			dy=theApp.WeekSetOF[theApp.sel_week][i];//关机
			if((dx<=dt)&&(dt<dy))
			{//开机
				 theApp.WeekRunFlag[theApp.sel_week][i]=0xff;
			     theApp.WeekStopFlag[theApp.sel_week][i]=0;
			}else
			{//关机
				 if(theApp.WeekStopFlag[theApp.sel_week][i]==0)
				 {
			     theApp.WeekStopFlag[theApp.sel_week][i]=0xff;
				 }
			}
		}
	 }
*/

}


void CFLADSView::OnDestroy() 
{
	CFormView::OnDestroy();
	
	// TODO: Add your message handler code here
	
}

int CFLADSView::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CFormView::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	// TODO: Add your specialized creation code here
	return 0;
}

void CFLADSView::OnUpdateIndicatorPosition(CCmdUI* pCmdUI)
{
	GetCursorPos(&m_ptCursorPos);
	CString stat;
	stat.Format(_T("Ln %03d, Col %03d"), m_ptCursorPos.y + 1, m_ptCursorPos.x + 1);
	pCmdUI->SetText(stat);
}

void CFLADSView::OnUpdateIndicatorType(CCmdUI* pCmdUI)
{
	CString stat;
    switch(theApp.ControlMode)
	{
		case MainControl_Window:stat=_T("ConWnd");
			                    break;
		case Set_Window:        stat=_T("SetWnd");
			                    break;
		case Para_Window:       stat=_T("ParaWnd");
			                    break;
		case Test_Window:       stat=_T("TestWnd");
			                    break;
		case Info_Window:       stat=_T("InfoWnd");
			                    break;
		case Warn_Window:       stat=_T("WarnWnd");
			                    break;
		case Curve_Window:      stat=_T("CurveWnd");
			                    break;
		default:	            stat=_T("      ");
			                    break;

	}
	pCmdUI->SetText(stat);
}

void CFLADSView::OnUpdateIndicatorTimer(CCmdUI* pCmdUI)
{
	CString str,string;

	str.Format(_T("%02d"),theApp.Year);
	string=str+_T(":");
	str.Format(_T("%02d"), theApp.Month);
	string=string+str+_T(":");
	str.Format(_T("%02d"), theApp.Day);
	string=string+str+_T(" ");
	str.Format(_T("%02d"), theApp.Hour);
	string=string+str+_T(":");
	str.Format(_T("%02d"), theApp.Minute);
	string=string+str+_T(":");
	str.Format(_T("%02d   "), theApp.Second);
	string=string+str;
    switch(theApp.Week)
	{
	case  0x00:str=_T(" Monday ");
//		       theApp.WeekPageNo=0;
		       break;
	case  0x01:str=_T("Tuesday ");
//		       theApp.WeekPageNo=1;
		       break;
	case  0x02:str=_T("Wednesday");
//		       theApp.WeekPageNo=2;
		       break;
	case  0x03:str=_T("Thursday");
//			   theApp.WeekPageNo=3;
		       break;
	case  0x04:str=_T(" Friday ");
//		       theApp.WeekPageNo=4;
		       break;
	case  0x05:str=_T("Saturday");
//		       theApp.WeekPageNo=5;
		       break;
	case  0x06:str=_T(" Sunday ");
//		       theApp.WeekPageNo=6;
		       break;
	}
	string=string+str;
	pCmdUI->SetText(string);
}


void CFLADSView::OnUpdateIndicatorTel(CCmdUI* pCmdUI)
{
	CString str;

⌨️ 快捷键说明

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