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

📄 techcourse.cpp

📁 参数化车间设备资源绘制程序
💻 CPP
字号:
// TechCourse.cpp : 实现文件
//

#include "stdafx.h"
#include "VisDraw.h"
#include "TechCourse.h"
#include "RightView.h"
#include "VisDrawDoc.h"


//extern CString m_gongxu;
// CTechCourse

IMPLEMENT_DYNCREATE(CTechCourse, CFormView)

CTechCourse::CTechCourse()
	: CFormView(CTechCourse::IDD)
{
   m_RightViewStr="";

}

CTechCourse::~CTechCourse()
{
	/*if(m_pDlg=NULL)
	{
		delete m_pDlg;
	}*/
}

void CTechCourse::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_LIST_GYGCH, m_ListCtrl1);
}

BEGIN_MESSAGE_MAP(CTechCourse, CFormView)
	ON_WM_CREATE()
	ON_WM_SETFOCUS()
	ON_NOTIFY(LVN_ITEMCHANGED,IDC_LIST_GYGCH, &CTechCourse::OnLvnItemchangedList3)
END_MESSAGE_MAP()


// CTechCourse 诊断

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

#ifndef _WIN32_WCE
void CTechCourse::Dump(CDumpContext& dc) const
{
	CFormView::Dump(dc);
}
#endif
#endif //_DEBUG


// CTechCourse 消息处理程序
CVisDrawDoc* CTechCourse::GetDocument() const
{
	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CVisDrawDoc)));
	return (CVisDrawDoc*)m_pDocument;
}
//BOOL CTechCourse::Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext)
//
//{
//	// TODO: 在此添加专用代码和/或调用基类
/*
	ASSERT(pParentWnd != NULL);
    ASSERT(m_lpszTemplateName != NULL);
 
    m_pCreateContext = pContext;  */  // save state for later OnCreate

	//#ifdef _DEBUG
// dialog template must exist and be invisible with WS_CHILD set
//if (!_AfxCheckDialogTemplate(m_lpszTemplateName, TRUE))
//{
//ASSERT(FALSE);          // invalid dialog template name
//PostNcDestroy();        // cleanup if Create fails too soon
//return FALSE;
//}
//#endif //_DEBUG
 
//若common control window类还没有注册,则注册
//VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTLS_REG));
 
// call PreCreateWindow to get prefered extended style
//CREATESTRUCT cs; memset(&cs, 0, sizeof(CREATESTRUCT));
//DWORD dwRequestedStyle;
//if (dwRequestedStyle == 0)
//dwRequestedStyle = AFX_WS_DEFAULT_VIEW;
//cs.style = dwRequestedStyle;
//if (!PreCreateWindow(cs))
//return FALSE;
// 
////::CreateDialogIndirect间接被调用来创建一个无模式对话框
//if (!CreateDlg(m_lpszTemplateName, pParentWnd))
//return FALSE;
////创建对话框时,OnCreate被调用,m_pCreateContext的作用结束了
//m_pCreateContext = NULL;
// 
//// we use the style from the template - but make sure that
////  the WS_BORDER bit is correct
//// the WS_BORDER bit will be whatever is in dwRequestedStyle
//ModifyStyle(WS_BORDER|WS_CAPTION, cs.style & (WS_BORDER|WS_CAPTION));
//ModifyStyleEx(WS_EX_CLIENTEDGE, cs.dwExStyle & WS_EX_CLIENTEDGE);
// 
//SetDlgCtrlID(nID);
// 
//CRect rectTemplate;
//GetWindowRect(rectTemplate);
//SetScrollSizes(MM_TEXT, rectTemplate.Size());
// 
//// initialize controls etc
//if (!ExecuteDlgInit(m_lpszTemplateName))
//return FALSE;
// 
//// force the size requested
//SetWindowPos(NULL, rect.left, rect.top,
//rect.right - rect.left, rect.bottom - rect.top,
//SWP_NOZORDER|SWP_NOACTIVATE);
// 
//// make visible if requested
//if (dwRequestedStyle & WS_VISIBLE)
//ShowWindow(SW_NORMAL);
//return TRUE;

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


void CTechCourse::OnInitialUpdate()
{
	CFormView::OnInitialUpdate();

	// TODO: 在此添加专用代码和/或调用基类
	GetParent()->SetWindowTextA(GetDocument()->GetTitle()+"--工艺过程卡");
	m_ListCtrl1.ModifyStyle(0,LVS_REPORT|LVS_SHOWSELALWAYS|LVS_SORTASCENDING);
	m_ListCtrl1.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE,0,LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
	CDC* pDC=GetDC();
	TEXTMETRIC tm;
	pDC->GetTextMetrics(&tm);
	m_ListCtrl1.InsertColumn(0,"工序号",LVCFMT_LEFT,8*tm.tmAveCharWidth,-1);
    m_ListCtrl1.InsertColumn(1,"工序名称",LVCFMT_LEFT,10*tm.tmAveCharWidth,-1);
	 m_ListCtrl1.InsertColumn(2,"工序内容",LVCFMT_LEFT,35*tm.tmAveCharWidth,2);
	  m_ListCtrl1.InsertColumn(3,"车间",LVCFMT_LEFT,8*tm.tmAveCharWidth,3);
	   m_ListCtrl1.InsertColumn(4,"工段",LVCFMT_LEFT,8*tm.tmAveCharWidth,4);
	    m_ListCtrl1.InsertColumn(5,"设备",LVCFMT_LEFT,15*tm.tmAveCharWidth,5);
		 m_ListCtrl1.InsertColumn(6,"工艺装备",LVCFMT_LEFT,35*tm.tmAveCharWidth,6);
		  m_ListCtrl1.InsertColumn(7,"工时",LVCFMT_LEFT,10*tm.tmAveCharWidth,7);


//}
}

void CTechCourse::OnUpdate(CView* /*pSender*/, LPARAM /*lHint*/, CObject* /*pHint*/)
{
	// TODO: 在此添加专用代码和/或调用基类
}

int CTechCourse::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
	if (CFormView::OnCreate(lpCreateStruct) == -1)
		return -1;

	// TODO:  在此添加您专用的创建代码
  //return CScrollView::OnCreate(lpCreateStruct);
	return 0;
}

BOOL CTechCourse::PreTranslateMessage(MSG* pMsg)
{
	// TODO: 在此添加专用代码和/或调用基类
//	 ASSERT(pMsg != NULL);
//     ASSERT_VALID(this);
//     ASSERT(m_hWnd != NULL);
// 
//    //过滤Tooltip消息
//     if (CView::PreTranslateMessage(pMsg))
//        return TRUE; CFrameWnd* pFrameWnd = GetTopLevelFrame();
//    if (pFrameWnd != NULL && pFrameWnd->m_bHelpMode)
//        return FALSE;
////       CFrameWnd* pFrameWnd = GetTopLevelFrame();
//    if (pFrameWnd != NULL && pFrameWnd->m_bHelpMode)
//        return FALSE;
////既然IsDialogMessage将把窗口快捷键解释成Dialog消息
////所以在此先调用所有父边框窗口的消息预处理函数
//    pFrameWnd = GetParentFrame();   // start with first parent frame
//    while (pFrameWnd != NULL)
//    {
//        // allow owner & frames to translate before IsDialogMessage does
//        if (pFrameWnd->PreTranslateMessage(pMsg))
//            return TRUE;
// 
//        // try parent frames until there are no parent frames
//            pFrameWnd = pFrameWnd->GetParentFrame();
//    }
// 
    // 过滤来自子窗口的消息或者给对话框的消息



	return CFormView::PreTranslateMessage(pMsg);
}

void CTechCourse::OnActivateView(BOOL bActivate, CView* pActivateView, CView* pDeactiveView)
{
	// TODO: 在此添加专用代码和/或调用基类

	CFormView::OnActivateView(bActivate, pActivateView, pDeactiveView);
}

void CTechCourse::OnActivateFrame(UINT nState, CFrameWnd* pDeactivateFrame)
{
	// TODO: 在此添加专用代码和/或调用基类

	CFormView::OnActivateFrame(nState, pDeactivateFrame);
}

void CTechCourse::OnSetFocus(CWnd* pOldWnd)
{
	CFormView::OnSetFocus(pOldWnd);

	// TODO: 在此处添加消息处理程序代码
//   pOldWnd=m_hWndFocus;
}

void CTechCourse::OnDraw(CDC* /*pDC*/)
{
	// TODO: 在此添加专用代码和/或调用基类
	CVisDrawDoc* pDoc=GetDocument();
	pDoc->GetStringRightview(m_RightViewStr);
	int m_Item=m_ListCtrl1.InsertItem(0,"1");
		 m_ListCtrl1.SetItemText(m_Item,1,m_RightViewStr);
		 UpdateData(false);
}

//CVisDrawDoc* CTechCourse::GetDocument(void)
//{
//	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CVisDrawDoc)));
//    return (CVisDrawDoc*)m_pDocument;
//	
//}

void CTechCourse::OnLvnItemchangedList3(NMHDR *pNMHDR, LRESULT *pResult)
{
	LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
	// TODO: 在此添加控件通知处理程序代码
	*pResult = 0;
}

void CTechCourse::GetRightViewString(void)
{
	//UpdateData(true);

	

}

⌨️ 快捷键说明

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