📄 collegemanagedemoview.cpp
字号:
// CollegeManageDemoView.cpp : implementation of the CCollegeManageDemoView class
//
#include "stdafx.h"
#include "CollegeManageDemo.h"
#include "CollegeManageDemoDoc.h"
#include "CollegeManageDemoView.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CCollegeManageDemoView
IMPLEMENT_DYNCREATE(CCollegeManageDemoView, CScrollView)
BEGIN_MESSAGE_MAP(CCollegeManageDemoView, CScrollView)
//{{AFX_MSG_MAP(CCollegeManageDemoView)
ON_COMMAND(ID_PERSON_QUERY, OnPersonQuery)
ON_COMMAND(ID_VIEW_CLEAR, OnViewClear)
ON_WM_ERASEBKGND()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CCollegeManageDemoView construction/destruction
CCollegeManageDemoView::CCollegeManageDemoView()
{
// TODO: add construction code here
m_bShow = 0;
}
CCollegeManageDemoView::~CCollegeManageDemoView()
{
}
BOOL CCollegeManageDemoView::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
return CScrollView::PreCreateWindow(cs);
}
/////////////////////////////////////////////////////////////////////////////
// CCollegeManageDemoView drawing
void CCollegeManageDemoView::OnDraw(CDC* pDC)
{
CCollegeManageDemoDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
int i;
int nYPos;
CString str;
if (!m_bShow)
return;
CFont cjcf;
pDC->SetROP2(R2_COPYPEN);
cjcf.CreateFont(20,10,0,0,50,0,0,0,255,OUT_TT_PRECIS,
CLIP_CHARACTER_PRECIS,DEFAULT_QUALITY,FIXED_PITCH,"宋体");
CFont *cjcbakf = pDC->SelectObject(&cjcf);
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(0,0,50));
nYPos = 0;
//教师信息
for (i=0;i<=pDoc->m_TeacherArray.GetUpperBound();i++)
{
str.Format("%s <%d>","教师对象:",i+1);
pDC->TextOut(100,20+160*i,str);
str = "编号: " + pDoc->m_TeacherArray.GetAt(i)->m_strId;
pDC->TextOut(120,50+160*i,str);
str = "姓名: " + pDoc->m_TeacherArray.GetAt(i)->m_strName;
pDC->TextOut(120,50+160*i+20,str);
str = "性别: " + pDoc->m_TeacherArray.GetAt(i)->m_strSex;
pDC->TextOut(120,50+160*i+40,str);
str = "出生日期: " + pDoc->m_TeacherArray.GetAt(i)->m_strBirthday;
pDC->TextOut(120,50+160*i+60,str);
str = "单位: " + pDoc->m_TeacherArray.GetAt(i)->m_strUnit;
pDC->TextOut(120,50+160*i+80,str);
str = "职称: " + pDoc->m_TeacherArray.GetAt(i)->m_strType;
pDC->TextOut(120,50+160*i+100,str);
}
nYPos = nYPos + 160*i;
//本科生信息
for (i=0;i<=pDoc->m_UndergraduateArray.GetUpperBound();i++)
{
str.Format("%s <%d>","本科生对象:",i+1);
pDC->TextOut(100,nYPos+20+190*i,str);
str = "编号: " + pDoc->m_UndergraduateArray.GetAt(i)->m_strId;
pDC->TextOut(120,nYPos+50+190*i,str);
str = "姓名: " + pDoc->m_UndergraduateArray.GetAt(i)->m_strName;
pDC->TextOut(120,nYPos+50+190*i+20,str);
str = "性别: " + pDoc->m_UndergraduateArray.GetAt(i)->m_strSex;
pDC->TextOut(120,nYPos+50+190*i+40,str);
str = "出生日期: " + pDoc->m_UndergraduateArray.GetAt(i)->m_strBirthday;
pDC->TextOut(120,nYPos+50+190*i+60,str);
str = "学号: " + pDoc->m_UndergraduateArray.GetAt(i)->m_strSid;
pDC->TextOut(120,nYPos+50+190*i+80,str);
str = "班级: " + pDoc->m_UndergraduateArray.GetAt(i)->m_strClass;
pDC->TextOut(120,nYPos+50+190*i+100,str);
str = "辅导员: " + pDoc->m_UndergraduateArray.GetAt(i)->m_strSid;
pDC->TextOut(120,nYPos+50+190*i+120,str);
str = "专业: " + pDoc->m_UndergraduateArray.GetAt(i)->m_strClass;
pDC->TextOut(120,nYPos+50+190*i+140,str);
}
nYPos = nYPos + 190*i + 30;
//研究生信息
for (i=0;i<=pDoc->m_MasterArray.GetUpperBound();i++)
{
str.Format("%s <%d>","研究生对象:",i+1);
pDC->TextOut(100,nYPos+20+190*i,str);
str = "编号: " + pDoc->m_MasterArray.GetAt(i)->m_strId;
pDC->TextOut(120,nYPos+50+190*i,str);
str = "姓名: " + pDoc->m_MasterArray.GetAt(i)->m_strName;
pDC->TextOut(120,nYPos+50+190*i+20,str);
str = "性别: " + pDoc->m_MasterArray.GetAt(i)->m_strSex;
pDC->TextOut(120,nYPos+50+190*i+40,str);
str = "出生日期: " + pDoc->m_MasterArray.GetAt(i)->m_strBirthday;
pDC->TextOut(120,nYPos+50+190*i+60,str);
str = "学号: " + pDoc->m_MasterArray.GetAt(i)->m_strSid;
pDC->TextOut(120,nYPos+50+190*i+80,str);
str = "班级: " + pDoc->m_MasterArray.GetAt(i)->m_strClass;
pDC->TextOut(120,nYPos+50+190*i+100,str);
str = "导师: " + pDoc->m_MasterArray.GetAt(i)->m_strSid;
pDC->TextOut(120,nYPos+50+190*i+120,str);
str = "研究成果: " + pDoc->m_MasterArray.GetAt(i)->m_strClass;
pDC->TextOut(120,nYPos+50+190*i+140,str);
}
nYPos += 190*i;
pDC->SelectObject(cjcbakf);//恢复字模
CSize sizeTotal;
// TODO: calculate the total size of this view
sizeTotal.cx = 100;
sizeTotal.cy = nYPos +100;
SetScrollSizes(MM_TEXT, sizeTotal);
}
void CCollegeManageDemoView::OnInitialUpdate()
{
CScrollView::OnInitialUpdate();
CSize sizeTotal;
// TODO: calculate the total size of this view
sizeTotal.cx = sizeTotal.cy = 100;
SetScrollSizes(MM_TEXT, sizeTotal);
}
/////////////////////////////////////////////////////////////////////////////
// CCollegeManageDemoView diagnostics
#ifdef _DEBUG
void CCollegeManageDemoView::AssertValid() const
{
CScrollView::AssertValid();
}
void CCollegeManageDemoView::Dump(CDumpContext& dc) const
{
CScrollView::Dump(dc);
}
CCollegeManageDemoDoc* CCollegeManageDemoView::GetDocument() // non-debug version is inline
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CCollegeManageDemoDoc)));
return (CCollegeManageDemoDoc*)m_pDocument;
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CCollegeManageDemoView message handlers
void CCollegeManageDemoView::OnPersonQuery()
{
// TODO: Add your command handler code here
m_bShow = 1;
Invalidate();
}
void CCollegeManageDemoView::OnViewClear()
{
// TODO: Add your command handler code here
m_bShow = 0;
Invalidate();
}
void CCollegeManageDemoView::Clear()
{
m_bShow = 0;
Invalidate();
}
BOOL CCollegeManageDemoView::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default
CBrush MyBrush;
MyBrush.CreateSolidBrush(RGB(240,251,223));
CBrush *pOldBrush = pDC->SelectObject(&MyBrush);
CRect Rect;
GetClientRect(&Rect);
Rect.bottom = Rect.Height() * 100;
Rect.top = -100000;
pDC->Rectangle(&Rect);
pDC->SelectObject(pOldBrush);
return true;
// return CScrollView::OnEraseBkgnd(pDC);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -