www.pudn.com > student_system.rar > studentView.cpp


// studentView.cpp : implementation of the CStudentView class 
// 
 
#include "stdafx.h" 
#include "student.h" 
 
#include "studentDoc.h" 
#include "studentView.h" 
#include "Hbar.h" 
#include "ado.h" 
#include "bybysdlg.h" 
#include "bycldlg.h" 
#include "byjysdlg.h" 
#include "cjcxdlg.h" 
#include "cjrkdlg.h" 
#include "dacxdlg.h" 
#include "dadjxsdlg.h" 
#include "xjdjjcdlg.h" 
#include "xjxfxdlg.h" 
#include "yhdlg.h" 
#include "PrintCjDlg.h" 
 
 
#ifdef _DEBUG 
#define new DEBUG_NEW 
#undef THIS_FILE 
static char THIS_FILE[] = __FILE__; 
#endif 
 
 
///////////////////////////////////////////////////////////////////////////// 
// CStudentView 
 
IMPLEMENT_DYNCREATE(CStudentView, CFormView) 
 
BEGIN_MESSAGE_MAP(CStudentView, CFormView) 
	//{{AFX_MSG_MAP(CStudentView) 
	ON_WM_MOUSEMOVE() 
	ON_COMMAND(ID_MENU_BY_BYS, OnMenuByBys) 
	ON_COMMAND(ID_MENU_BY_CL, OnMenuByCl) 
	ON_COMMAND(ID_MENU_CJ_CX, OnMenuCjCx) 
	ON_COMMAND(ID_MENU_CJ_RK, OnMenuCjRk) 
	ON_COMMAND(ID_MENU_DA_CX, OnMenuDaCx) 
	ON_COMMAND(ID_MENU_DA_DJXS, OnMenuDaDjxs) 
	ON_COMMAND(ID_MENU_XJ_DJJC, OnMenuXjDjjc) 
	ON_COMMAND(ID_MENU_XJ_XFX, OnMenuXjXfx) 
	ON_COMMAND(ID_MENU_YH, OnMenuYh) 
	ON_COMMAND(ID_MENUI_BY_JYS, OnMenuiByJys) 
	ON_NOTIFY(NM_CLICK, IDC_LIST_GN, OnClickListGn) 
	//}}AFX_MSG_MAP 
	// Standard printing commands 
	ON_COMMAND(ID_FILE_PRINT, CFormView::OnFilePrint) 
	ON_COMMAND(ID_FILE_PRINT_DIRECT, CFormView::OnFilePrint) 
	ON_COMMAND(ID_FILE_PRINT_PREVIEW, CFormView::OnFilePrintPreview) 
END_MESSAGE_MAP() 
 
///////////////////////////////////////////////////////////////////////////// 
// CStudentView construction/destruction 
 
CStudentView::CStudentView() 
	: CFormView(CStudentView::IDD) 
{ 
	//{{AFX_DATA_INIT(CStudentView) 
	//}}AFX_DATA_INIT 
	// TODO: add construction code here 
	m_barIndex = -2; 
	IsInit = true; 
	m_myBarX = 0; 
	PrintDlg = NULL; 
	PrintOption = 0; 
 
	//ADO连接 
	m_conn = new CADODatabase; 
	this->m_conn->Open(ADOCONNSTR,"",""); 
	m_recSet = new CADORecordset(m_conn); 
	m_recSetTemp = new CADORecordset(m_conn); 
 
	//图标列表 
	imageList = new CImageList; 
	imageList->Create(IDB_BITMAP1,0,0,NULL); 
	CBitmap *bitmap=new CBitmap; 
	bitmap->LoadBitmap(IDB_BITMAP2); 
	imageList->Add(bitmap,RGB(0,0,0)); 
 
 
	bitmap = new CBitmap(); 
	bitmap->LoadBitmap(IDB_BITMAP3); 
	imageList->Add(bitmap,RGB(0,0,0)); 
 
	bitmap = new CBitmap(); 
	bitmap->LoadBitmap(IDB_BITMAP4); 
	imageList->Add(bitmap,RGB(0,0,0)); 
 
	bitmap = new CBitmap(); 
	bitmap->LoadBitmap(IDB_BITMAP5); 
	imageList->Add(bitmap,RGB(0,0,0)); 
 
	bitmap = new CBitmap(); 
	bitmap->LoadBitmap(IDB_BITMAP6); 
	imageList->Add(bitmap,RGB(0,0,0)); 
 
	bitmap = new CBitmap(); 
	bitmap->LoadBitmap(IDB_BITMAP7); 
	imageList->Add(bitmap,RGB(0,0,0)); 
 
	bitmap = new CBitmap(); 
	bitmap->LoadBitmap(IDB_BITMAP8); 
	imageList->Add(bitmap,RGB(0,0,0)); 
 
	bitmap = new CBitmap(); 
	bitmap->LoadBitmap(IDB_BITMAP9); 
	imageList->Add(bitmap,RGB(0,0,0)); 
 
	bitmap = new CBitmap(); 
	bitmap->LoadBitmap(IDB_BITMAP10); 
	imageList->Add(bitmap,RGB(0,0,0)); 
 
	//功能对话框 
 
	m_Dlg_ByBys	=NULL; 
	m_Dlg_ByCl	=NULL; 
	m_Dlg_ByJys	=NULL; 
	m_Dlg_CjCx	=NULL; 
	m_Dlg_CjRk	=NULL; 
	m_Dlg_DaCx	=NULL; 
	m_Dlg_DaDjxs=NULL; 
	m_Dlg_XjDjjc=NULL; 
	m_Dlg_XjXfx	=NULL; 
	m_Dlg_Yh	=NULL; 
	 
	 
} 
 
CStudentView::~CStudentView() 
{ 
	if(m_Dlg_ByBys	!=NULL) 
	{ 
		delete m_Dlg_ByBys; 
	} 
	if(m_Dlg_ByCl	!=NULL) 
	{ 
		delete m_Dlg_ByCl; 
	} 
	if(m_Dlg_ByJys	!=NULL) 
	{ 
		delete m_Dlg_ByJys; 
	} 
	if(m_Dlg_CjCx	!=NULL) 
	{ 
		delete m_Dlg_CjCx; 
	} 
	if(m_Dlg_CjRk	!=NULL) 
	{ 
		delete m_Dlg_CjRk; 
	} 
	if(m_Dlg_DaCx	!=NULL) 
	{ 
		delete m_Dlg_DaCx; 
	} 
	if(m_Dlg_DaDjxs	!=NULL) 
	{ 
		delete m_Dlg_DaDjxs; 
	} 
	if(m_Dlg_XjDjjc	!=NULL) 
	{ 
		delete m_Dlg_XjDjjc; 
	} 
	if(m_Dlg_XjXfx	!=NULL) 
	{ 
		delete m_Dlg_XjXfx; 
	} 
	if(m_Dlg_Yh		!=NULL) 
	{ 
		delete m_Dlg_Yh; 
	} 
 
	if(imageList !=NULL) 
	{ 
		delete imageList; 
	} 
	m_conn->Close(); 
	imageList->DeleteImageList(); 
} 
 
void CStudentView::DoDataExchange(CDataExchange* pDX) 
{ 
	CFormView::DoDataExchange(pDX); 
	//{{AFX_DATA_MAP(CStudentView) 
	DDX_Control(pDX, IDC_LIST_GN, m_listCtrlGN); 
	DDX_Control(pDX, IDC_MYLOG, m_myLog); 
	DDX_Control(pDX, IDC_MYMENULIST, m_myMenuList); 
	DDX_Control(pDX, IDC_FORMBAR, m_formBar); 
	DDX_Control(pDX, IDC_COMMANDBUTTON1, m_B1); 
	DDX_Control(pDX, IDC_COMMANDBUTTON2, m_B2); 
	DDX_Control(pDX, IDC_COMMANDBUTTON3, m_B3); 
	DDX_Control(pDX, IDC_COMMANDBUTTON4, m_B4); 
	//}}AFX_DATA_MAP 
	IsInit = false; 
} 
 
BOOL CStudentView::PreCreateWindow(CREATESTRUCT& cs) 
{ 
	// TODO: Modify the Window class or styles here by modifying 
	//  the CREATESTRUCT cs 
 
	return CFormView::PreCreateWindow(cs); 
} 
 
void CStudentView::OnInitialUpdate() 
{ 
	CFormView::OnInitialUpdate(); 
	GetParentFrame()->RecalcLayout(); 
	ResizeParentToFit(); 
} 
 
///////////////////////////////////////////////////////////////////////////// 
// CStudentView printing 
 
BOOL CStudentView::OnPreparePrinting(CPrintInfo* pInfo) 
{ 
	// default preparation 
 
	return DoPreparePrinting(pInfo); 
} 
 
void CStudentView::OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo) 
{ 
	// TODO: add extra initialization before printing 
	 
} 
 
void CStudentView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/) 
{ 
	// TODO: add cleanup after printing 
	if(PrintOption == IDD_DLG_CJ_CX) 
	{ 
		PrintOption = 0; 
		CCjCxDlg *dlg =(CCjCxDlg *)PrintDlg; 
		if(dlg->PrintKCNameList != NULL) 
		{ 
			dlg->PrintKCNameList->FreeExtra(); 
			dlg->PrintKCNameList = NULL; 
		} 
		dlg->PrintKCNameCount = 0; 
	} 
} 
 
void CStudentView::OnPrint(CDC* pDC, CPrintInfo* pInfo) 
{ 
	// TODO: add customized printing code here 
	if(PrintOption == IDD_DLG_CJ_CX) 
	{ 
		CCjCxDlg *dlg =(CCjCxDlg *)PrintDlg; 
 
		int ColCount = dlg->PrintKCNameCount; 
	 
		ColCount+=3; 
 
	 
		// start printing the lines 
		 //二维点阵 
		int *x_pos = new int[ColCount+1]; 
		int RowCount = 41; 
		int *y_pos = new int[RowCount+1]; 
	 
		int i; 
	 
		//设置横坐标 
		for (i=0; i<=RowCount; i++) 
			y_pos[i] = 230 + (70 * i); 
		 
		CString *str =new CString[ColCount] ;	 
		str[0].Format("编号"); 
		str[1].Format("学号"); 
		str[2].Format("姓名"); 
		for(i = 3;iPrintKCNameList[i-3]); 
		} 
		 //设置纵坐标 
		x_pos[0] = (pInfo->m_rectDraw.Width() - (700+(ColCount-3)*200)) /2; 
		x_pos[1] = x_pos[0] + 100; 
		x_pos[2] = x_pos[1] + 300; 
		x_pos[3] = x_pos[2] + 300; 
 
		for(i = 4;i<=ColCount;i++) 
		{ 
			if(str[i-1].GetLength()<=4) 
			{ 
				x_pos[i] = x_pos[i-1] + 200; 
			} 
			else 
			{ 
				x_pos[i] = x_pos[i-1] +str[i-1].GetLength()*26; 
			} 
		} 
 
	 
		//打印30行 
		for (i=0; i<=RowCount; i++) 
		{ 
			pDC->MoveTo(x_pos[0], y_pos[i]); 
			pDC->LineTo(x_pos[ColCount], y_pos[i]); 
		} 
		for (i=0;i<=ColCount;i++) 
		{ 
			pDC->MoveTo(x_pos[i],y_pos[0]); 
			pDC->LineTo(x_pos[i],y_pos[RowCount]); 
			 
		} 
		CSize Size; 
		CRect StrRect;              //Draw text in Rect 
		CFont NewFont1; 
		NewFont1.CreateFont(100,40,0,0, 
			FW_HEAVY, 
			false,false,false, 
			ANSI_CHARSET, 
			OUT_DEFAULT_PRECIS, 
			CLIP_DEFAULT_PRECIS, 
			DEFAULT_QUALITY, 
			DEFAULT_PITCH|FF_DONTCARE, 
			"黑体"); 
 
		CFont NewFont2; 
		NewFont2.CreateFont(55,21,0,0, 
			FW_HEAVY, 
			false,false,false, 
			ANSI_CHARSET, 
			OUT_DEFAULT_PRECIS, 
			CLIP_DEFAULT_PRECIS, 
			DEFAULT_QUALITY, 
			DEFAULT_PITCH|FF_DONTCARE, 
			"黑体"); 
		 
		CFont NewFont3; 
		NewFont3.CreateFont(40,18,0,0, 
			FW_HEAVY, 
			false,false,false, 
			ANSI_CHARSET, 
			OUT_DEFAULT_PRECIS, 
			CLIP_DEFAULT_PRECIS, 
			DEFAULT_QUALITY, 
			DEFAULT_PITCH|FF_DONTCARE, 
			"宋体"); 
 
		pDC->SelectObject(&NewFont1); 
		StrRect.SetRect(x_pos[0], 100, x_pos[ColCount], 200); 
		pDC->DrawText("成  绩  单", StrRect, DT_CENTER| DT_VCENTER |DT_SINGLELINE); 
		 
		pDC->SelectObject(&NewFont2); 
		for (i=0; iDrawText(str[i], StrRect, DT_CENTER| DT_VCENTER |DT_SINGLELINE); 
		} 
		pDC->SelectObject(&NewFont3); 
		CString SID; 
		CString SName; 
		CString sqlt; 
		CString temp; 
		double d_Zcj; 
		CString s_Zcj; 
		m_recSet->Open(dlg->sql.GetBuffer(200)); 
	 
		for(i=0;(iIsEOF());i++) 
		{ 
			m_recSet->GetFieldValue(0,SID); 
			m_recSet->GetFieldValue("S_Name",SName); 
		 
			temp.Format("%d",i); 
			StrRect.SetRect(x_pos[0], y_pos[i+1], x_pos[1], y_pos[i+2]); 
			pDC->DrawText(temp, StrRect, DT_CENTER| DT_VCENTER |DT_SINGLELINE); 
		 
			StrRect.SetRect(x_pos[1], y_pos[i+1], x_pos[2], y_pos[i+2]); 
			pDC->DrawText(SID, StrRect, DT_CENTER| DT_VCENTER |DT_SINGLELINE); 
 
			StrRect.SetRect(x_pos[2], y_pos[i+1], x_pos[3], y_pos[i+2]); 
			pDC->DrawText(SName, StrRect, DT_CENTER| DT_VCENTER |DT_SINGLELINE); 
		 
		 
			for(int j=0;jOpen(sqlt.GetBuffer(200)); 
				if(!m_recSetTemp->IsEOF()) 
				{ 
					m_recSetTemp->GetFieldValue("ZCJ",d_Zcj); 
					s_Zcj.Format("%.2f",d_Zcj); 
					StrRect.SetRect(x_pos[j+3], y_pos[i+1], x_pos[j+4], y_pos[i+2]); 
					pDC->DrawText(s_Zcj, StrRect,DT_CENTER| DT_VCENTER |DT_SINGLELINE); 
				} 
				m_recSetTemp->Close(); 
			} 
			m_recSet->MoveNext(); 
		} 
		m_recSet->Close(); 
	 
		//~~ 
		delete x_pos; 
		delete y_pos; 
	//	delete str; 
		str->FreeExtra(); 
 
	} 
} 
 
///////////////////////////////////////////////////////////////////////////// 
// CStudentView diagnostics 
 
#ifdef _DEBUG 
void CStudentView::AssertValid() const 
{ 
	CFormView::AssertValid(); 
} 
 
void CStudentView::Dump(CDumpContext& dc) const 
{ 
	CFormView::Dump(dc); 
} 
 
CStudentDoc* CStudentView::GetDocument() // non-debug version is inline 
{ 
	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CStudentDoc))); 
	return (CStudentDoc*)m_pDocument; 
} 
#endif //_DEBUG 
 
///////////////////////////////////////////////////////////////////////////// 
// CStudentView message handlers 
 
BEGIN_EVENTSINK_MAP(CStudentView, CFormView) 
    //{{AFX_EVENTSINK_MAP(CStudentView) 
	ON_EVENT(CStudentView, IDC_COMMANDBUTTON1, -600 /* Click */, OnClickCommandbutton1, VTS_NONE) 
	ON_EVENT(CStudentView, IDC_COMMANDBUTTON1, -606 /* MouseMove */, OnMouseMoveCommandbutton1, VTS_I2 VTS_I2 VTS_R4 VTS_R4) 
	ON_EVENT(CStudentView, IDC_COMMANDBUTTON2, -606 /* MouseMove */, OnMouseMoveCommandbutton2, VTS_I2 VTS_I2 VTS_R4 VTS_R4) 
	ON_EVENT(CStudentView, IDC_COMMANDBUTTON3, -606 /* MouseMove */, OnMouseMoveCommandbutton3, VTS_I2 VTS_I2 VTS_R4 VTS_R4) 
	ON_EVENT(CStudentView, IDC_COMMANDBUTTON4, -606 /* MouseMove */, OnMouseMoveCommandbutton4, VTS_I2 VTS_I2 VTS_R4 VTS_R4) 
	ON_EVENT(CStudentView, IDC_COMMANDBUTTON2, -600 /* Click */, OnClickCommandbutton2, VTS_NONE) 
	ON_EVENT(CStudentView, IDC_COMMANDBUTTON3, -600 /* Click */, OnClickCommandbutton3, VTS_NONE) 
	ON_EVENT(CStudentView, IDC_COMMANDBUTTON4, -600 /* Click */, OnClickCommandbutton4, VTS_NONE) 
	//}}AFX_EVENTSINK_MAP 
END_EVENTSINK_MAP() 
 
 
 
void CStudentView::OnMouseMove(UINT nFlags, CPoint point)  
{ 
	// TODO: Add your message handler code here and/or call defau 
	if(this->m_barIndex == -1) 
	{ 
		 
	} 
	else 
	{ 
		this->RefreshMyBar(-1); 
	//	this->Invalidate(true); 
		this->m_barIndex = -1; 
	} 
 
	 
	CFormView::OnMouseMove(nFlags, point); 
} 
 
void CStudentView::OnMouseMoveCommandbutton1(short Button, short Shift, float X, float Y)  
{ 
	// TODO: Add your control notification handler code here 
	this->RefreshMyBar(0); 
} 
 
void CStudentView::OnMouseMoveCommandbutton2(short Button, short Shift, float X, float Y)  
{ 
	// TODO: Add your control notification handler code here 
	this->RefreshMyBar(1); 
} 
 
void CStudentView::OnMouseMoveCommandbutton3(short Button, short Shift, float X, float Y)  
{ 
	// TODO: Add your control notification handler code here 
	this->RefreshMyBar(2); 
} 
 
void CStudentView::OnMouseMoveCommandbutton4(short Button, short Shift, float X, float Y)  
{ 
	// TODO: Add your control notification handler code here 
	this->RefreshMyBar(3); 
} 
 
 
void CStudentView::RefreshMyBar(int index) 
{ 
 
	if(this->m_barIndex != index) 
	{ 
		CHBar mybar(STATIC_MYBAR_BUCOUNT,STATIC_MYBAR_MINW,STATIC_MYBAR_MAXW,STATIC_MYBAR_MINH,STATIC_MYBAR_MAXH,STATIC_MYBAR_MAXY); 
		mybar.Get(index,0); 
		m_B1.MoveWindow(m_myBarX+mybar.m_x,STATIC_Y-mybar.m_y,mybar.m_w,mybar.m_h); 
		mybar.Get(index,1); 
		m_B2.MoveWindow(m_myBarX+mybar.m_x,STATIC_Y-mybar.m_y,mybar.m_w,mybar.m_h); 
		mybar.Get(index,2); 
		m_B3.MoveWindow(m_myBarX+mybar.m_x,STATIC_Y-mybar.m_y,mybar.m_w,mybar.m_h); 
		mybar.Get(index,3); 
		m_B4.MoveWindow(m_myBarX+mybar.m_x,STATIC_Y-mybar.m_y,mybar.m_w,mybar.m_h); 
		 
	} 
	this->m_barIndex = index; 
 
} 
 
 
void CStudentView::CalcWindowRect(LPRECT lpClientRect, UINT nAdjustType)  
{ 
	// TODO: Add your specialized code here and/or call the base class 
	if(!IsInit) 
	{ 
		 
		m_formBar.MoveWindow(0,0,lpClientRect->right,lpClientRect->bottom); 
	 
		//工具栏位置 
		this->m_myBarX = 5+(lpClientRect->right-(STATIC_MYBAR_BUCOUNT)*STATIC_MYBAR_MAXW)/2; 
		if(this->m_myBarX <5) 
		{ 
			m_myBarX =5; 
		} 
 
		//菜单列表位置 
		m_myMenuList.MoveWindow(3,STATIC_MYWIN_TOP,STATIC_MYWIN_LEFT,lpClientRect->bottom-STATIC_MYWIN_TOP); 
		m_listCtrlGN.MoveWindow(3,STATIC_MYWIN_TOP+6,STATIC_MYWIN_LEFT,lpClientRect->bottom-STATIC_MYWIN_TOP-6); 
		//LOG位置 
		m_myLog.MoveWindow(STATIC_MYWIN_LEFT+3,STATIC_MYWIN_TOP,lpClientRect->right-(STATIC_MYWIN_LEFT+4),lpClientRect->bottom-STATIC_MYWIN_TOP); 
		 
		if(m_Dlg_DaDjxs !=NULL) 
		{ 
			if(m_Dlg_DaDjxs->m_zp.Buffer !=NULL) 
			{ 
				m_Dlg_DaDjxs->ShowDataImage(); 
			} 
		} 
	} 
	CFormView::CalcWindowRect(lpClientRect, nAdjustType); 
} 
 
bool CStudentView::OpenGNDlg(int nID) 
{ 
	if(m_Dlg_ByBys !=NULL) 
	{ 
		m_Dlg_ByBys->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_ByCl !=NULL) 
	{ 
		m_Dlg_ByCl->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_ByJys !=NULL) 
	{ 
		m_Dlg_ByJys->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_CjCx !=NULL) 
	{ 
		m_Dlg_CjCx->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_CjRk !=NULL) 
	{ 
		m_Dlg_CjRk->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_DaCx !=NULL) 
	{ 
		m_Dlg_DaCx->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_DaDjxs !=NULL) 
	{ 
		m_Dlg_DaDjxs->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_XjDjjc !=NULL) 
	{ 
		m_Dlg_XjDjjc->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_XjXfx !=NULL) 
	{ 
		m_Dlg_XjXfx->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_Yh !=NULL) 
	{ 
		m_Dlg_Yh->ShowWindow(SW_HIDE); 
	} 
	switch(nID) 
	{ 
	case IDD_DLG_BY_BYS: 
		if(m_Dlg_ByBys !=NULL) 
		{ 
			m_Dlg_ByBys->ShowWindow(SW_SHOW); 
		} 
		else 
		{ 
			m_Dlg_ByBys =new CByBysDlg(this); 
			m_Dlg_ByBys->m_parent = this; 
			m_Dlg_ByBys->Create(IDD_DLG_BY_BYS,this); 
			m_Dlg_ByBys->ShowWindow(SW_SHOW); 
			m_listCtrlGN.SetImageList(imageList,0); 
			m_listCtrlGN.InsertItem(IDD_DLG_BY_BYS,"查看毕业生",9); 
		} 
		break; 
	case IDD_DLG_BY_CL: 
		if(m_Dlg_ByCl !=NULL) 
		{ 
			m_Dlg_ByCl->ShowWindow(SW_SHOW); 
		} 
		else 
		{ 
			m_Dlg_ByCl =new CByClDlg(this); 
			m_Dlg_ByCl->m_parent = this; 
			m_Dlg_ByCl->Create(IDD_DLG_BY_CL,this); 
			m_Dlg_ByCl->ShowWindow(SW_SHOW); 
			m_listCtrlGN.SetImageList(imageList,0); 
			m_listCtrlGN.InsertItem(IDD_DLG_BY_CL,"毕业处理",1); 
			 
		} 
		break; 
	case IDD_DLG_BY_JYS: 
		if(m_Dlg_ByJys !=NULL) 
		{ 
			m_Dlg_ByJys->ShowWindow(SW_SHOW); 
		} 
		else 
		{ 
			m_Dlg_ByJys =new CByJysDlg(this); 
			m_Dlg_ByJys->m_parent = this; 
			m_Dlg_ByJys->Create(IDD_DLG_BY_JYS,this); 
			m_Dlg_ByJys->ShowWindow(SW_SHOW); 
			m_listCtrlGN.SetImageList(imageList,0); 
			m_listCtrlGN.InsertItem(IDD_DLG_BY_JYS,"查看结业生",2); 
			 
		} 
		break; 
	case IDD_DLG_CJ_CX: 
		if(m_Dlg_CjCx !=NULL) 
		{ 
			m_Dlg_CjCx->ShowWindow(SW_SHOW); 
		} 
		else 
		{ 
			m_Dlg_CjCx =new CCjCxDlg(this); 
			m_Dlg_CjCx->m_parent = this; 
			m_Dlg_CjCx->Create(IDD_DLG_CJ_CX,this); 
			m_Dlg_CjCx->ShowWindow(SW_SHOW); 
			m_listCtrlGN.SetImageList(imageList,0); 
			m_listCtrlGN.InsertItem(IDD_DLG_CJ_CX,"成绩查询",3); 
			 
		} 
		break; 
	case IDD_DLG_CJ_RK: 
		if(m_Dlg_CjRk !=NULL) 
		{ 
			m_Dlg_CjRk->ShowWindow(SW_SHOW); 
		} 
		else 
		{ 
			m_Dlg_CjRk =new CCjRkDlg(this); 
			m_Dlg_CjRk->m_parent = this; 
			m_Dlg_CjRk->Create(IDD_DLG_CJ_RK,this); 
			m_Dlg_CjRk->ShowWindow(SW_SHOW); 
			m_listCtrlGN.SetImageList(imageList,0); 
			m_listCtrlGN.InsertItem(IDD_DLG_CJ_RK,"成绩登记入库",4); 
			 
		} 
		break; 
	case IDD_DLG_DA_DJXS: 
		if(m_Dlg_DaDjxs !=NULL) 
		{ 
			m_Dlg_DaDjxs->ShowWindow(SW_SHOW); 
		} 
		else 
		{ 
			m_Dlg_DaDjxs =new CDaDjxsDlg(this); 
			m_Dlg_DaDjxs->m_parent = this; 
			m_Dlg_DaDjxs->Create(IDD_DLG_DA_DJXS,this); 
			m_Dlg_DaDjxs->ShowWindow(SW_SHOW); 
			m_listCtrlGN.SetImageList(imageList,0); 
			m_listCtrlGN.InsertItem(IDD_DLG_DA_DJXS,"登记学生",5); 
			 
		} 
		break; 
	case IDD_DLG_DA_CX: 
		if(m_Dlg_DaCx !=NULL) 
		{ 
			m_Dlg_DaCx->ShowWindow(SW_SHOW); 
		} 
		else 
		{ 
			m_Dlg_DaCx =new CDaCxDlg(this); 
			m_Dlg_DaCx->m_parent = this; 
			m_Dlg_DaCx->Create(IDD_DLG_DA_CX,this); 
			m_Dlg_DaCx->ShowWindow(SW_SHOW); 
			m_listCtrlGN.SetImageList(imageList,0); 
			m_listCtrlGN.InsertItem(IDD_DLG_DA_CX,"学生信息查询",6);			 
		} 
		break; 
	case IDD_DLG_XJ_DJJC: 
		if(m_Dlg_XjDjjc !=NULL) 
		{ 
			m_Dlg_XjDjjc->ShowWindow(SW_SHOW); 
		} 
		else 
		{ 
			m_Dlg_XjDjjc =new CXjDjjcDlg(this); 
			m_Dlg_XjDjjc->m_parent = this; 
			m_Dlg_XjDjjc->Create(IDD_DLG_XJ_DJJC,this); 
			m_Dlg_XjDjjc->ShowWindow(SW_SHOW); 
			m_listCtrlGN.SetImageList(imageList,0); 
			m_listCtrlGN.InsertItem(IDD_DLG_XJ_DJJC,"登记奖惩",7);			 
		} 
		break; 
	case IDD_DLG_XJ_XFX: 
		if(m_Dlg_XjXfx !=NULL) 
		{ 
			m_Dlg_XjXfx->ShowWindow(SW_SHOW); 
		} 
		else 
		{ 
			m_Dlg_XjXfx =new CXjXfxDlg(this); 
			m_Dlg_XjXfx->m_parent = this; 
			m_Dlg_XjXfx->Create(IDD_DLG_XJ_XFX,this); 
			m_Dlg_XjXfx->ShowWindow(SW_SHOW); 
			m_listCtrlGN.SetImageList(imageList,0); 
			m_listCtrlGN.InsertItem(IDD_DLG_XJ_XFX,"修复学处理",8); 
		} 
		break; 
	case IDD_DLG_YH: 
		if(m_Dlg_Yh !=NULL) 
		{ 
			m_Dlg_Yh->ShowWindow(SW_SHOW); 
		} 
		else 
		{ 
			m_Dlg_Yh =new CYhDlg(this); 
			m_Dlg_Yh->m_parent = this; 
			m_Dlg_Yh->Create(IDD_DLG_YH,this); 
			m_Dlg_Yh->ShowWindow(SW_SHOW); 
			m_listCtrlGN.SetImageList(imageList,0); 
			m_listCtrlGN.InsertItem(IDD_DLG_YH,"用户管理",0); 
		} 
		break; 
	default: 
		return false; 
	} 
	m_listCtrlGN.Invalidate(); 
	 
	return true; 
} 
 
void CStudentView::OnMenuByBys()  
{ 
	// TODO: Add your command handler code here 
	this->OpenGNDlg(IDD_DLG_BY_BYS); 
} 
 
void CStudentView::OnMenuByCl()  
{ 
	// TODO: Add your command handler code here 
	this->OpenGNDlg(IDD_DLG_BY_CL); 
} 
 
void CStudentView::OnMenuCjCx()  
{ 
	// TODO: Add your command handler code here 
	this->OpenGNDlg(IDD_DLG_CJ_CX);	 
} 
 
void CStudentView::OnMenuCjRk()  
{ 
	// TODO: Add your command handler code here 
	this->OpenGNDlg(IDD_DLG_CJ_RK);	 
} 
 
void CStudentView::OnMenuDaCx()  
{ 
	// TODO: Add your command handler code here 
	this->OpenGNDlg(IDD_DLG_DA_CX);	 
} 
 
void CStudentView::OnMenuDaDjxs()  
{ 
	// TODO: Add your command handler code here 
	this->OpenGNDlg(IDD_DLG_DA_DJXS);	 
} 
 
void CStudentView::OnMenuXjDjjc()  
{ 
	// TODO: Add your command handler code here 
	this->OpenGNDlg(IDD_DLG_XJ_DJJC);	 
} 
 
void CStudentView::OnMenuXjXfx()  
{ 
	// TODO: Add your command handler code here 
	this->OpenGNDlg(IDD_DLG_XJ_XFX);	 
} 
 
void CStudentView::OnMenuYh()  
{ 
	// TODO: Add your command handler code here 
	this->OpenGNDlg(IDD_DLG_YH);	 
} 
 
void CStudentView::OnMenuiByJys()  
{ 
	// TODO: Add your command handler code here 
	this->OpenGNDlg(IDD_DLG_BY_JYS);	 
} 
 
void CStudentView::OnClickListGn(NMHDR* pNMHDR, LRESULT* pResult)  
{ 
	// TODO: Add your control notification handler code here 
	int index = m_listCtrlGN.GetSelectionMark(); 
	if(index<0) 
	{ 
		return; 
	} 
	if(m_Dlg_ByBys !=NULL) 
	{ 
		m_Dlg_ByBys->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_ByCl !=NULL) 
	{ 
		m_Dlg_ByCl->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_ByJys !=NULL) 
	{ 
		m_Dlg_ByJys->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_CjCx !=NULL) 
	{ 
		m_Dlg_CjCx->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_CjRk !=NULL) 
	{ 
		m_Dlg_CjRk->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_DaCx !=NULL) 
	{ 
		m_Dlg_DaCx->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_DaDjxs !=NULL) 
	{ 
		m_Dlg_DaDjxs->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_XjDjjc !=NULL) 
	{ 
		m_Dlg_XjDjjc->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_XjXfx !=NULL) 
	{ 
		m_Dlg_XjXfx->ShowWindow(SW_HIDE); 
	} 
	if(m_Dlg_Yh !=NULL) 
	{ 
		m_Dlg_Yh->ShowWindow(SW_HIDE); 
	} 
	CString st=m_listCtrlGN.GetItemText(index,0); 
	if(st.Compare("登记奖惩") ==0) 
	{ 
		if(m_Dlg_XjDjjc !=NULL) 
		{ 
			m_Dlg_XjDjjc->ShowWindow(SW_SHOW); 
		} 
	} 
	else if(st.Compare("修复学处理") ==0) 
	{ 
		if(m_Dlg_XjXfx !=NULL) 
		{ 
			m_Dlg_XjXfx->ShowWindow(SW_SHOW); 
		} 
	} 
	else if(st.Compare("登记学生") ==0) 
	{ 
		if(m_Dlg_DaDjxs !=NULL) 
		{ 
			m_Dlg_DaDjxs->ShowWindow(SW_SHOW); 
		} 
	} 
	else if(st.Compare("学生信息查询") ==0) 
	{ 
		if(m_Dlg_DaCx !=NULL) 
		{ 
			m_Dlg_DaCx->ShowWindow(SW_SHOW); 
		} 
	} 
	else if(st.Compare("毕业处理") ==0) 
	{ 
		if(m_Dlg_ByCl !=NULL) 
		{ 
			m_Dlg_ByCl->ShowWindow(SW_SHOW); 
		} 
	} 
	else if(st.Compare("查看毕业生") ==0) 
	{ 
		if(m_Dlg_ByBys !=NULL) 
		{ 
			m_Dlg_ByBys->ShowWindow(SW_SHOW); 
		} 
	} 
	else if(st.Compare("查看结业生") ==0) 
	{ 
		if(m_Dlg_ByJys !=NULL) 
		{ 
			m_Dlg_ByJys->ShowWindow(SW_SHOW); 
		} 
	} 
	else if(st.Compare("成绩登记入库") ==0) 
	{ 
		if(m_Dlg_CjRk !=NULL) 
		{ 
			m_Dlg_CjRk->ShowWindow(SW_SHOW); 
		} 
	} 
	else if(st.Compare("成绩查询") ==0) 
	{ 
		if(m_Dlg_CjCx !=NULL) 
		{ 
			m_Dlg_CjCx->ShowWindow(SW_SHOW); 
		} 
	} 
	else if(st.Compare("用户管理") ==0) 
	{ 
		if(m_Dlg_Yh !=NULL) 
		{ 
			m_Dlg_Yh->ShowWindow(SW_SHOW); 
		} 
	} 
	 
	*pResult = 0; 
} 
 
 
void CStudentView::OnClickCommandbutton1()  
{ 
	// TODO: Add your control notification handler code here 
 
	CloseAllGNDlg(); 
	if(IsGNInMenu(ID_MENU_XJ_DJJC)) 
	{ 
		OpenGNDlg(IDD_DLG_XJ_DJJC); 
		m_Dlg_XjDjjc->ShowWindow(SW_HIDE); 
	} 
	if(IsGNInMenu(ID_MENU_XJ_XFX)) 
	{ 
		OpenGNDlg(IDD_DLG_XJ_XFX); 
		m_Dlg_XjXfx->ShowWindow(SW_HIDE); 
	} 
} 
 
void CStudentView::OnClickCommandbutton2()  
{ 
	// TODO: Add your control notification handler code here 
	CloseAllGNDlg(); 
	if(IsGNInMenu(ID_MENU_DA_CX)) 
	{ 
		OpenGNDlg(IDD_DLG_DA_CX); 
		m_Dlg_DaCx->ShowWindow(SW_HIDE); 
	} 
	if(IsGNInMenu(ID_MENU_DA_DJXS)) 
	{ 
		OpenGNDlg(IDD_DLG_DA_DJXS); 
		m_Dlg_DaDjxs->ShowWindow(SW_HIDE); 
	} 
} 
 
void CStudentView::OnClickCommandbutton3()  
{ 
	// TODO: Add your control notification handler code here	 
	CloseAllGNDlg(); 
	 
	if(IsGNInMenu(ID_MENU_BY_CL)) 
	{ 
		OpenGNDlg(IDD_DLG_BY_CL); 
		m_Dlg_ByCl->ShowWindow(SW_HIDE); 
	} 
	 
	if(IsGNInMenu(ID_MENU_BY_BYS)) 
	{ 
		OpenGNDlg(IDD_DLG_BY_BYS); 
		m_Dlg_ByBys->ShowWindow(SW_HIDE); 
	} 
 
	if(IsGNInMenu(ID_MENUI_BY_JYS)) 
	{ 
		OpenGNDlg(IDD_DLG_BY_JYS); 
		m_Dlg_ByJys->ShowWindow(SW_HIDE); 
	} 
} 
 
void CStudentView::OnClickCommandbutton4()  
{ 
	// TODO: Add your control notification handler code here 
	CloseAllGNDlg(); 
	if(IsGNInMenu(ID_MENU_CJ_CX)) 
	{ 
		OpenGNDlg(IDD_DLG_CJ_CX); 
		m_Dlg_CjCx->ShowWindow(SW_HIDE); 
	} 
	if(IsGNInMenu(ID_MENU_CJ_RK)) 
	{ 
		OpenGNDlg(IDD_DLG_CJ_RK); 
		m_Dlg_CjRk->ShowWindow(SW_HIDE); 
	} 
} 
 
void CStudentView::CloseAllGNDlg() 
{ 
	if(m_Dlg_ByBys !=NULL) 
	{ 
		m_Dlg_ByBys->DestroyWindow(); 
		m_Dlg_ByBys = NULL; 
		LVFINDINFO info; 
		info.psz = "查看毕业生"; 
		info.flags = LVFI_STRING; 
		this->m_listCtrlGN.DeleteItem(this->m_listCtrlGN.FindItem(&info))	;	 
		 
	} 
	if(m_Dlg_ByCl !=NULL) 
	{ 
		m_Dlg_ByCl->DestroyWindow(); 
		m_Dlg_ByCl = NULL; 
		LVFINDINFO info; 
		info.psz = "毕业处理"; 
		info.flags = LVFI_STRING; 
		this->m_listCtrlGN.DeleteItem(this->m_listCtrlGN.FindItem(&info))	;	 
		 
	} 
	if(m_Dlg_ByJys !=NULL) 
	{ 
		m_Dlg_ByJys->DestroyWindow(); 
		m_Dlg_ByJys = NULL; 
		LVFINDINFO info; 
		info.psz = "查看结业生"; 
		info.flags = LVFI_STRING; 
		this->m_listCtrlGN.DeleteItem(this->m_listCtrlGN.FindItem(&info))	;	 
		 
	} 
	if(m_Dlg_CjCx !=NULL) 
	{ 
		m_Dlg_CjCx->DestroyWindow(); 
		m_Dlg_CjCx = NULL; 
		LVFINDINFO info; 
		info.psz = "成绩查询"; 
		info.flags = LVFI_STRING; 
		this->m_listCtrlGN.DeleteItem(this->m_listCtrlGN.FindItem(&info))	;	 
		 
	} 
	if(m_Dlg_CjRk !=NULL) 
	{ 
		m_Dlg_CjRk->DestroyWindow(); 
		m_Dlg_CjRk = NULL; 
		LVFINDINFO info; 
		info.psz = "成绩登记入库"; 
		info.flags = LVFI_STRING; 
		this->m_listCtrlGN.DeleteItem(this->m_listCtrlGN.FindItem(&info))	;	 
		 
	} 
	if(m_Dlg_DaCx !=NULL) 
	{ 
		m_Dlg_DaCx->DestroyWindow(); 
		m_Dlg_DaCx = NULL; 
		LVFINDINFO info; 
		info.psz = "学生信息查询"; 
		info.flags = LVFI_STRING; 
		this->m_listCtrlGN.DeleteItem(this->m_listCtrlGN.FindItem(&info))	;	 
		 
	} 
	if(m_Dlg_DaDjxs !=NULL) 
	{ 
		m_Dlg_DaDjxs->DestroyWindow(); 
		m_Dlg_DaDjxs = NULL; 
		LVFINDINFO info; 
		info.psz = "登记学生"; 
		info.flags = LVFI_STRING; 
		this->m_listCtrlGN.DeleteItem(this->m_listCtrlGN.FindItem(&info))	;	 
		 
	} 
	if(m_Dlg_XjDjjc !=NULL) 
	{ 
		m_Dlg_XjDjjc->DestroyWindow(); 
		m_Dlg_XjDjjc = NULL; 
		LVFINDINFO info; 
		info.psz = "登记奖惩"; 
		info.flags = LVFI_STRING; 
		this->m_listCtrlGN.DeleteItem(this->m_listCtrlGN.FindItem(&info))	;	 
		 
	} 
	if(m_Dlg_XjXfx !=NULL) 
	{ 
		m_Dlg_XjXfx->DestroyWindow(); 
		m_Dlg_XjXfx = NULL; 
		LVFINDINFO info; 
		info.psz = "修复学处理"; 
		info.flags = LVFI_STRING; 
		this->m_listCtrlGN.DeleteItem(this->m_listCtrlGN.FindItem(&info))	;	 
		 
	} 
	if(m_Dlg_Yh !=NULL) 
	{ 
		m_Dlg_Yh->DestroyWindow(); 
		m_Dlg_Yh = NULL; 
		LVFINDINFO info; 
		info.psz = "用户管理"; 
		info.flags = LVFI_STRING; 
		this->m_listCtrlGN.DeleteItem(this->m_listCtrlGN.FindItem(&info))	;	 
		 
	} 
} 
 
 
bool CStudentView::IsGNInMenu(UINT nID) 
{ 
	CMenu *menu = this->GetParent()->GetMenu(),*tmenu; 
	int count = menu->GetMenuItemCount(),tcount; 
	for(int i=0;iGetMenuItemID(i) == -1) 
		{ 
			tmenu = menu->GetSubMenu(i); 
			tcount = tmenu->GetMenuItemCount(); 
			for(int j=0;jGetMenuItemID(j) == nID) 
				{ 
					return true; 
				} 
			} 
		} 
		else 
		{ 
			if(menu->GetMenuItemID(i) == nID) 
			{ 
				return true; 
			} 
		} 
	} 
	return false; 
} 
 
 
void CStudentView::StartPrintPreview() 
{ 
	this->OnFilePrintPreview(); 
}