亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? wrapperview.cpp

?? 這個(gè)程序是一個(gè)個(gè)人考勤軟件,它從系統(tǒng)時(shí)鐘獲取時(shí)間信息,可逐日記錄下個(gè)人每天的工作時(shí)間,按月統(tǒng)計(jì)匯總,按年形成文件.可以查看過(guò)去的記錄,也可把記錄按月打印出來(lái)或進(jìn)行年匯總。
?? CPP
字號(hào):
// WrapperView.cpp : implementation file
//

#include "stdafx.h"
#include "WrapperView.h"
#include "MyPreviewView.h"
#include "attendance.h"

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

BOOL CALLBACK _AfxMyPreviewCloseProc(CFrameWnd* pFrameWnd);

/////////////////////////////////////////////////////////////////////////////
// CWrapperView

IMPLEMENT_DYNCREATE(CWrapperView, CScrollView)

CWrapperView::CWrapperView()
{
	m_pFrameWnd = NULL;
	m_nMapMode = MM_TEXT; //default
}

CWrapperView::~CWrapperView()
{
}


BEGIN_MESSAGE_MAP(CWrapperView, CScrollView)
	//{{AFX_MSG_MAP(CWrapperView)
		// NOTE - the ClassWizard will add and remove mapping macros here.
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

void CWrapperView::OnDraw(CDC *pDC)
{
	if(pDC)
	{
	}
}
/////////////////////////////////////////////////////////////////////////////
// CWrapperView diagnostics

#ifdef _DEBUG
void CWrapperView::AssertValid() const
{
	CView::AssertValid();
}

void CWrapperView::Dump(CDumpContext& dc) const
{
	CView::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CWrapperView message handlers

BOOL CALLBACK _AfxMyPreviewCloseProc(CFrameWnd* pFrameWnd)
{
	ASSERT_VALID(pFrameWnd);

	CMyPreviewView* pView = (CMyPreviewView*) pFrameWnd->GetDlgItem(AFX_IDW_PANE_FIRST);
	ASSERT_KINDOF(CPreviewView, pView);

	pView->OnPreviewClose();
	return FALSE;
}

BOOL CWrapperView::OnPreparePrinting(CPrintInfo* pInfo) 
{
	// default preparation
	return DoPreparePrinting(pInfo);
}

void CWrapperView::OnFilePrintPreview(CFrameWnd *pFrame)
{
	// In derived classes, implement special window handling here
	// Be sure to Unhook Frame Window close if hooked.
	m_pFrameWnd = pFrame;

	// must not create this on the frame.  Must outlive this function
	CPrintPreviewState* pState = new CPrintPreviewState;
	pState->lpfnCloseProc = _AfxMyPreviewCloseProc;

	// DoPrintPreview's return value does not necessarily indicate that
	// Print preview succeeded or failed, but rather what actions are necessary
	// at this point.  If DoPrintPreview returns TRUE, it means that
	// OnEndPrintPreview will be (or has already been) called and the
	// pState structure will be/has been deleted.
	// If DoPrintPreview returns FALSE, it means that OnEndPrintPreview
	// WILL NOT be called and that cleanup, including deleting pState
	// must be done here.

	if (!DoPrintPreview(AFX_IDD_PREVIEW_TOOLBAR, this,
							RUNTIME_CLASS(CMyPreviewView), pState))
	{
		// In derived classes, reverse special window handling here for
		// Preview failure case

		TRACE0("Error: DoPrintPreview failed.\n");
		AfxMessageBox(AFX_IDP_COMMAND_FAILURE);
		delete pState;      // preview failed to initialize, delete State now
	}
}

BOOL CWrapperView::DoPrintPreview(UINT nIDResource, CView* pPrintView,
	CRuntimeClass* pPreviewViewClass, CPrintPreviewState* pState)
{
	ASSERT_VALID_IDR(nIDResource);
	ASSERT_VALID(pPrintView);
	ASSERT(pPreviewViewClass != NULL);
	ASSERT(pPreviewViewClass->IsDerivedFrom(RUNTIME_CLASS(CPreviewView)));
	ASSERT(pState != NULL);

	ASSERT(m_pFrameWnd != NULL);
	CFrameWnd* pParent = m_pFrameWnd; //STATIC_DOWNCAST(CFrameWnd, AfxGetMainWnd()); //
	ASSERT_VALID(pParent);

	CCreateContext context;
	context.m_pCurrentFrame = pParent;
	context.m_pCurrentDoc = GetDocument();
	context.m_pLastView = this;

	// Create the preview view object
	CMyPreviewView* pView = (CMyPreviewView*)pPreviewViewClass->CreateObject();
	if (pView == NULL)
	{
		TRACE0("Error: Failed to create preview view.\n");
		return FALSE;
	}
	ASSERT_KINDOF(CPreviewView, pView);
	pView->m_pPreviewState = pState;        // save pointer

	pParent->OnSetPreviewMode(TRUE, pState);    // Take over Frame Window

	// Create the toolbar from the dialog resource
	pView->m_pToolBar = new CDialogBar;
	if (!pView->m_pToolBar->Create(pParent, MAKEINTRESOURCE(nIDResource),
		CBRS_TOP, AFX_IDW_PREVIEW_BAR))
	{
		TRACE0("Error: Preview could not create toolbar dialog.\n");
		pParent->OnSetPreviewMode(FALSE, pState);   // restore Frame Window
		delete pView->m_pToolBar;       // not autodestruct yet
		pView->m_pToolBar = NULL;
		pView->m_pPreviewState = NULL;  // do not delete state structure
		delete pView;
		return FALSE;
	}
	pView->m_pToolBar->m_bAutoDelete = TRUE;    // automatic cleanup

	// Create the preview view as a child of the App Main Window.  This
	// is a sibling of this view if this is an SDI app.  This is NOT a sibling
	// if this is an MDI app.

	if (!pView->Create(NULL, NULL, AFX_WS_DEFAULT_VIEW,
		CRect(0,0,0,0), pParent, AFX_IDW_PANE_FIRST, &context))
	{
		TRACE0("Error: couldn't create preview view for frame.\n");
		pParent->OnSetPreviewMode(FALSE, pState);   // restore Frame Window
		pView->m_pPreviewState = NULL;  // do not delete state structure
		delete pView;
		return FALSE;
	}

	// Preview window shown now

	pState->pViewActiveOld = pParent->GetActiveView();
	CWrapperView* pActiveView = (CWrapperView*)pParent->GetActiveFrame()->GetActiveView();
	if (pActiveView != NULL)
		pActiveView->OnActivateView(FALSE, pActiveView, pActiveView);

	if (!pView->SetPrintView(pPrintView))
	{
		pView->OnPreviewClose();
		return TRUE;            // signal that OnEndPrintPreview was called
	}

	pParent->SetActiveView(pView);  // set active view - even for MDI

	// update toolbar and redraw everything
	pView->m_pToolBar->SendMessage(WM_IDLEUPDATECMDUI, (WPARAM)TRUE);
	pParent->RecalcLayout();            // position and size everything
	pParent->UpdateWindow();

	return TRUE;
}

// OnEndPrintPreview is here for swap tuning reasons
//  (see viewprev.cpp for complete preview mode implementation)
void CWrapperView::OnEndPrintPreview(CDC* pDC, CPrintInfo* pInfo,
			POINT, CMyPreviewView* pView)
{
	ASSERT_VALID(pDC);
	ASSERT_VALID(pView);
	ASSERT(m_pFrameWnd != NULL);

	if (pView->m_pPrintView != NULL)
		OnEndPrinting(pDC, pInfo);

	CFrameWnd* pParent = m_pFrameWnd;
	ASSERT_VALID(pParent);

	// restore the old main window
	pParent->OnSetPreviewMode(FALSE, pView->m_pPreviewState);

	// Force active view back to old one
	pParent->SetActiveView(pView->m_pPreviewState->pViewActiveOld);
	if (pParent != GetParentFrame())
		OnActivateView(TRUE, this, this);   // re-activate view in real frame
	pView->DestroyWindow();     // destroy preview view
			// C++ object will be deleted in PostNcDestroy

	// restore main frame layout and idle message
	CAttendanceApp* app=(CAttendanceApp*)AfxGetApp();//嵐增
	//app->m_pMiddle->m_pChildFrame->m_pView->ShowWindow(SW_HIDE);//嵐增     // destroy preview view
	pParent->RecalcLayout();
	pParent->SendMessage(WM_SETMESSAGESTRING, (WPARAM)AFX_IDS_IDLEMESSAGE, 0L);
	pParent->ShowWindow(SW_HIDE);//嵐增     // destroy preview view
	pParent->UpdateWindow();
	app->m_pMainWnd = app->m_pMiddle;//嵐增
	app->m_pMiddle->ShowWindow(SW_SHOW);//嵐增
	app->m_pMiddle->ShowWindow(SW_SHOW);//嵐增
	app->m_pMiddle->UpdateWindow();//嵐增
	//Invalidate();
}

void CWrapperView::OnEndPrinting(CDC* pDC, CPrintInfo* pInfo)
{
	CView::OnEndPrinting(pDC, pInfo);
}

/////////////////////////////////////////////////////////////////////

IMPLEMENT_DYNCREATE(CMyPreviewView, CPreviewView)

CMyPreviewView::CMyPreviewView()
{
}

CMyPreviewView::~CMyPreviewView()
{
}

BEGIN_MESSAGE_MAP(CMyPreviewView, CPreviewView)
	//{{AFX_MSG_MAP(CMyPreviewView)
	ON_COMMAND(AFX_ID_PREVIEW_CLOSE, OnPreviewClose)
	ON_COMMAND(AFX_ID_PREVIEW_PRINT, OnPreviewPrint)
		// NOTE - the ClassWizard will add and remove mapping macros here.
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMyPreviewView drawing

void CMyPreviewView::OnDraw(CDC* pDC)
{
	CPreviewView::OnDraw(pDC);
//	CView::OnDraw(pDC);
//	m_pToolBar->OnUpdateCmdUI((CFrameWnd*)AfxGetApp()->m_pMainWnd,1);//控制條的命令狀態(tài)更新
	m_pToolBar->PostMessage(WM_IDLEUPDATECMDUI, (WPARAM)TRUE);
}

/////////////////////////////////////////////////////////////////////////////
// CMyPreviewView diagnostics

#ifdef _DEBUG
void CMyPreviewView::AssertValid() const
{
	
}

void CMyPreviewView::Dump(CDumpContext& dc) const
{

}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CMyPreviewView message handlers

void CMyPreviewView::OnActivateView(BOOL bActivate, CView* pView1, CView *pView2)
{
	CPreviewView::OnActivateView(bActivate, pView1, pView2);
	//CView::OnActivateView(bActivate, pView1, pView2);
}

void CMyPreviewView::OnPreviewClose()
{
	m_pToolBar->DestroyWindow();
	m_pToolBar = NULL;

	m_pPreviewInfo->m_nCurPage = m_nCurrentPage;
	((CWrapperView*)m_pOrigView)->OnEndPrintPreview(m_pPreviewDC, m_pPreviewInfo,
									CPoint(0, 0), this);
}

void CMyPreviewView::OnEndPrintPreview(CDC* pDC, CPrintInfo* pInfo, POINT point, CPreviewView* pView) 
{
	// TODO: Add your specialized code here and/or call the base class
	
	CPreviewView::OnEndPrintPreview(pDC, pInfo, point, pView);
}

void CMyPreviewView::OnPreviewPrint()
{
	m_pPrintView->SendMessage(WM_COMMAND, ID_FILE_PRINT);
	OnPreviewClose();               // force close of Preview

	// cause print (can be overridden by catching the command)
	//CWnd* pMainWnd = AfxGetThread()->m_pMainWnd;
	//ASSERT_VALID(pMainWnd);
	//pMainWnd->SendMessage(WM_COMMAND, ID_FILE_PRINT);
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色偷偷一区二区三区| 91.麻豆视频| 日日摸夜夜添夜夜添精品视频| 欧美一级搡bbbb搡bbbb| 99久久精品99国产精品| 蓝色福利精品导航| 亚洲美女屁股眼交| 久久久精品欧美丰满| 欧美浪妇xxxx高跟鞋交| 97精品国产露脸对白| 国模大尺度一区二区三区| 国产麻豆日韩欧美久久| 亚洲午夜久久久| 中文字幕在线不卡一区| 久久久久久久久久久久久久久99| 欧美日韩一区中文字幕| 波多野结衣欧美| 国产一本一道久久香蕉| 日韩二区三区在线观看| 一区二区三区精品| 亚洲视频小说图片| 中文字幕乱码亚洲精品一区| 日韩欧美中文一区二区| 欧美久久久久中文字幕| 欧美性感一区二区三区| 色综合久久久久久久| 成人精品高清在线| 国产91清纯白嫩初高中在线观看| 麻豆国产欧美一区二区三区| 首页国产欧美日韩丝袜| 亚洲高清免费在线| 亚洲成人三级小说| 亚洲一区二区在线视频| 夜夜精品浪潮av一区二区三区| 国产精品家庭影院| 国产精品久久久99| 国产精品剧情在线亚洲| 国产精品麻豆久久久| 中文字幕乱码亚洲精品一区| 国产欧美日产一区| 国产精品视频yy9299一区| 国产精品日韩精品欧美在线| 中文字幕免费不卡| 国产精品第四页| 亚洲色图欧美在线| 一区二区三区四区中文字幕| 亚洲柠檬福利资源导航| 亚洲精品第1页| 一区二区三区91| 午夜电影网一区| 免费看黄色91| 韩国三级电影一区二区| 精品午夜久久福利影院| 国内精品视频一区二区三区八戒| 国产一区二区免费看| 国产精品一区二区久激情瑜伽| 国产精品一区在线| a4yy欧美一区二区三区| 色悠悠久久综合| 欧美肥妇毛茸茸| 26uuu精品一区二区| 国产欧美一区二区精品久导航| 欧美国产综合色视频| 亚洲精品成人悠悠色影视| 香蕉久久一区二区不卡无毒影院| 日本不卡一区二区三区高清视频| 久久国产精品99精品国产| 国产suv精品一区二区6| 91女人视频在线观看| 欧美日韩黄色一区二区| 欧美xxx久久| 国产精品护士白丝一区av| 一区二区三区在线播放| 蜜臀av亚洲一区中文字幕| 国产精品资源网站| 日本高清视频一区二区| 日韩免费一区二区| 国产精品高潮久久久久无| 亚洲国产综合色| 国产原创一区二区三区| 在线观看www91| 精品国产区一区| 亚洲精品第1页| 麻豆精品久久精品色综合| 不卡av在线免费观看| 欧美老人xxxx18| 中文字幕高清不卡| 日韩黄色小视频| 不卡视频一二三| 日韩网站在线看片你懂的| 国产精品九色蝌蚪自拍| 91久久精品国产91性色tv| 欧美一级久久久久久久大片| 中文字幕在线观看不卡视频| 免费看精品久久片| 在线一区二区视频| 中文字幕乱码日本亚洲一区二区 | 激情国产一区二区| 色欧美片视频在线观看在线视频| 欧美不卡视频一区| 一区二区三区在线观看视频| 国产在线看一区| 777欧美精品| 亚洲精品五月天| 成人午夜私人影院| 日韩精品中文字幕在线不卡尤物| 亚洲激情在线激情| 成人午夜av在线| 久久美女艺术照精彩视频福利播放| 亚洲一区二区三区小说| 99精品国产热久久91蜜凸| 久久久久久久久久久黄色| 麻豆成人免费电影| 7878成人国产在线观看| 亚洲精品高清在线观看| 99久久99久久久精品齐齐| 久久精品亚洲精品国产欧美| 老司机免费视频一区二区| 欧美久久一二区| 午夜电影网一区| 欧美日韩免费观看一区三区| 亚洲女人小视频在线观看| 91小视频免费观看| 国产精品成人一区二区艾草 | 日韩有码一区二区三区| 91浏览器入口在线观看| 最新久久zyz资源站| 成人免费视频播放| 日本一二三不卡| 国产·精品毛片| 国产日韩欧美a| 国产一区999| 国产日韩欧美综合在线| 极品少妇一区二区| 久久综合狠狠综合| 国产福利精品一区二区| 国产亚洲1区2区3区| 国产精品69毛片高清亚洲| 久久蜜桃av一区精品变态类天堂| 久久99热99| 久久久久久久久免费| 国产成人在线视频播放| 国产亚洲精品超碰| 成人黄色一级视频| 综合色天天鬼久久鬼色| 一本色道综合亚洲| 亚洲午夜国产一区99re久久| 欧美日韩dvd在线观看| 三级欧美韩日大片在线看| 欧美一区二区在线免费观看| 六月丁香综合在线视频| 久久综合久久综合亚洲| 国产99一区视频免费| **欧美大码日韩| 欧美日韩在线播| 激情伊人五月天久久综合| 欧美国产综合色视频| 一本色道久久加勒比精品| 亚洲高清免费视频| 日韩欧美一卡二卡| 成人福利电影精品一区二区在线观看| 亚洲欧洲av在线| 欧美性做爰猛烈叫床潮| 免费国产亚洲视频| 国产精品蜜臀av| 欧美午夜免费电影| 久久国产综合精品| 国产精品久久网站| 欧美日韩高清在线| 国产精品一二三四区| 亚洲精品视频自拍| 日韩女优av电影| 91在线国产观看| 毛片一区二区三区| 国产精品国产三级国产普通话99| 欧美日韩免费在线视频| 国产综合久久久久久鬼色| 亚洲日本在线a| 精品乱码亚洲一区二区不卡| 97久久人人超碰| 久久激情五月激情| 国产一区视频网站| 亚洲大尺度视频在线观看| 欧美精品一区二区三区蜜臀| 色综合久久88色综合天天| 久88久久88久久久| 一区二区不卡在线视频 午夜欧美不卡在| 91精品国产入口| 99精品久久99久久久久| 久久99精品久久久久婷婷| 亚洲精品中文在线观看| 久久久亚洲高清| 欧美日本在线播放| 波波电影院一区二区三区| 美国欧美日韩国产在线播放| 亚洲另类一区二区| 日本一区二区三区免费乱视频| 在线播放/欧美激情| 99久久精品国产网站| 国产乱子伦视频一区二区三区|