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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? stuview.cpp

?? InsideVC++配套源碼之三
?? CPP
字號:
// StuView.cpp : implementation of the CStudentView class
//

#include "stdafx.h"
#include "ex16a.h"

#include "StuDoc.h"
#include "StuView.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_BN_CLICKED(IDC_CLEAR, OnClear)
	ON_COMMAND(ID_STUDENT_HOME, OnCommandHome)
	ON_COMMAND(ID_STUDENT_END, OnCommandEnd)
	ON_COMMAND(ID_STUDENT_PREV, OnCommandPrev)
	ON_COMMAND(ID_STUDENT_NEXT, OnCommandNext)
	ON_COMMAND(ID_STUDENT_INS, OnCommandIns)
	ON_COMMAND(ID_STUDENT_DEL, OnCommandDel)
	ON_UPDATE_COMMAND_UI(ID_STUDENT_HOME, OnUpdateCommandHome)
	ON_UPDATE_COMMAND_UI(ID_STUDENT_END, OnUpdateCommandEnd)
	ON_UPDATE_COMMAND_UI(ID_STUDENT_PREV, OnUpdateCommandHome)
	ON_UPDATE_COMMAND_UI(ID_STUDENT_NEXT, OnUpdateCommandEnd)
	ON_UPDATE_COMMAND_UI(ID_STUDENT_DEL, OnUpdateCommandDel)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CStudentView construction/destruction

CStudentView::CStudentView()
	: CFormView(CStudentView::IDD)
{
	TRACE("Entering CStudentView constructor\n");
	//{{AFX_DATA_INIT(CStudentView)
	m_nGrade = 0;
	m_strName = _T("");
	//}}AFX_DATA_INIT
	m_position = NULL;
}

CStudentView::~CStudentView()
{
}

void CStudentView::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CStudentView)
	DDX_Text(pDX, IDC_GRADE, m_nGrade);
	DDV_MinMaxInt(pDX, m_nGrade, 0, 100);
	DDX_Text(pDX, IDC_NAME, m_strName);
	DDV_MaxChars(pDX, m_strName, 20);
	//}}AFX_DATA_MAP
}

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

	return CFormView::PreCreateWindow(cs);
}

/////////////////////////////////////////////////////////////////////////////
// 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

void CStudentView::OnClear() 
{
	TRACE("Entering CStudentView::OnClear\n");
	ClearEntry();
}

void CStudentView::OnUpdate(CView* pSender, LPARAM lHint, CObject* pHint) 
{
	// called by OnInitialUpdate and by UpdateAllViews
	TRACE("Entering CStudentView::OnUpdate\n");
	m_position = m_pList->GetHeadPosition();
	GetEntry(m_position); // initial data for view
}

void CStudentView::OnInitialUpdate() 
{
	TRACE("Entering CStudentView::OnInitialUpdate\n");
	m_pList = GetDocument()->GetList();
	CFormView::OnInitialUpdate();
}

void CStudentView::OnCommandHome() 
{
	TRACE("Entering CStudentView::OnCommandHome\n");
	// need to deal with list empty condition
	if (!m_pList->IsEmpty()) {
		m_position = m_pList->GetHeadPosition();
		GetEntry(m_position);
	}
}

void CStudentView::OnCommandEnd() 
{
	TRACE("Entering CStudentView::OnCommandEnd\n");
	if (!m_pList->IsEmpty()) {
		m_position = m_pList->GetTailPosition();
		GetEntry(m_position);
	}
}

void CStudentView::OnCommandPrev() 
{
	POSITION pos;
	TRACE("Entering CStudentView::OnCommandPrev\n");
	if ((pos = m_position) != NULL) {
		m_pList->GetPrev(pos);
		if (pos) {
			GetEntry(pos);
			m_position = pos;
		}
	}
}

void CStudentView::OnCommandNext() 
{
	POSITION pos;
	TRACE("Entering CStudentView::OnCommandNext\n");
	if ((pos = m_position) != NULL) {
		m_pList->GetNext(pos);
		if (pos) {
			GetEntry(pos);
			m_position = pos;
		}
	}
}

void CStudentView::OnCommandIns() 
{
	TRACE("Entering CStudentView::OnCommandIns\n");
	InsertEntry(m_position);
	GetDocument()->SetModifiedFlag();
	GetDocument()->UpdateAllViews(this);
}

void CStudentView::OnCommandDel() 
{
	// deletes current entry and positions to next one or head
	POSITION pos;
	TRACE("Entering CStudentView::OnCommandDel\n");
	if ((pos = m_position) != NULL) {
		m_pList->GetNext(pos);
		if (pos == NULL) {
			pos = m_pList->GetHeadPosition();
			TRACE("GetHeadPos = %ld\n", pos);
			if (pos == m_position) {
				pos = NULL;
			}
		}
		GetEntry(pos);
		CStudent* ps = m_pList->GetAt(m_position);
		m_pList->RemoveAt(m_position);
		delete ps;
		m_position = pos;
		GetDocument()->SetModifiedFlag();
		GetDocument()->UpdateAllViews(this);
	}
}

void CStudentView::OnUpdateCommandHome(CCmdUI* pCmdUI) 
{
	// called during idle processing and when Student menu drops down
	POSITION pos;

	// enables button if list not empty and not at home already
	pos = m_pList->GetHeadPosition();
	pCmdUI->Enable((m_position != NULL) && (pos != m_position));
}

void CStudentView::OnUpdateCommandEnd(CCmdUI* pCmdUI) 
{
	// called during idle processing and when Student menu drops down
	POSITION pos;

	// enables button if list not empty and not at end already
	pos = m_pList->GetTailPosition();
	pCmdUI->Enable((m_position != NULL) && (pos != m_position));
}

void CStudentView::OnUpdateCommandDel(CCmdUI* pCmdUI) 
{
	// called during idle processing and when Student menu drops down
	pCmdUI->Enable(m_position != NULL);
}

void CStudentView::GetEntry(POSITION position)
{
	if (position) {
		CStudent* pStudent = m_pList->GetAt(position);
		m_strName = pStudent->m_strName;
		m_nGrade = pStudent->m_nGrade;
	}
	else {
		ClearEntry();
	}
	UpdateData(FALSE);
}

void CStudentView::InsertEntry(POSITION position)
{
	if (UpdateData(TRUE)) {
		// UpdateData returns FALSE if it detects a user error
		CStudent* pStudent = new CStudent;
		pStudent->m_strName = m_strName;
		pStudent->m_nGrade = m_nGrade;
		m_position = m_pList->InsertAfter(m_position, pStudent);
	}
}

void CStudentView::ClearEntry()
{
	m_strName = "";
	m_nGrade = 0;
	UpdateData(FALSE);
	((CDialog*) this)->GotoDlgCtrl(GetDlgItem(IDC_NAME));
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美国产丝袜视频| 国产精品一区一区三区| 免费高清在线一区| 不卡在线观看av| 久久综合九色综合97婷婷女人| 亚洲精品国产视频| 国产成人精品免费在线| 欧美一区二区三区色| 亚洲精品国产品国语在线app| 国产乱子伦视频一区二区三区 | 一区二区三区精密机械公司| 国产精品99久久久久久宅男| 日韩一级二级三级精品视频| 亚洲一区免费视频| 色综合一个色综合| 国产精品护士白丝一区av| 九九精品视频在线看| 欧美精品久久天天躁| 亚洲美女免费在线| 9人人澡人人爽人人精品| 国产午夜精品久久久久久免费视 | 一区二区三区日韩精品| 99久久久无码国产精品| 欧美韩日一区二区三区四区| 国产在线精品一区在线观看麻豆| 777久久久精品| 日韩中文字幕1| 日韩欧美的一区| 另类小说综合欧美亚洲| 在线播放欧美女士性生活| 亚洲大型综合色站| 欧美精品123区| 蜜桃一区二区三区四区| 日韩一区二区三区视频在线| 美女国产一区二区三区| 欧美一级一区二区| 久久精品国产精品亚洲综合| 91精品国产综合久久久久久漫画 | 日韩精品视频网站| 51午夜精品国产| 精品在线观看免费| 久久噜噜亚洲综合| 99久久免费精品| 亚洲国产欧美在线| 日韩一区二区三区视频在线| 狠狠色综合日日| 国产精品美女久久久久久| 91丨porny丨中文| 亚洲一卡二卡三卡四卡五卡| 正在播放一区二区| 国产在线乱码一区二区三区| 国产精品日日摸夜夜摸av| 91精品福利视频| 免费的成人av| 国产精品麻豆久久久| 在线观看成人免费视频| 免费欧美日韩国产三级电影| 国产喷白浆一区二区三区| 日本精品一区二区三区高清| 偷偷要91色婷婷| 国产女人18水真多18精品一级做| 99re亚洲国产精品| 美女免费视频一区| 玉米视频成人免费看| 日韩精品一区二区在线观看| 成人免费av网站| 奇米精品一区二区三区四区| 国产精品天干天干在线综合| 欧美精品在欧美一区二区少妇| 久久精品国产精品青草| 亚洲女同一区二区| 2023国产精品自拍| 欧美日韩一级黄| 成人高清av在线| 久久精品国产第一区二区三区| 亚洲精选视频在线| 久久天堂av综合合色蜜桃网| 欧美日韩一级大片网址| 高清日韩电视剧大全免费| 午夜精品爽啪视频| 亚洲婷婷国产精品电影人久久| 日韩欧美国产一区在线观看| 色综合咪咪久久| 丁香激情综合国产| 国产麻豆视频一区二区| 天堂成人免费av电影一区| 最近中文字幕一区二区三区| 久久无码av三级| 欧美大白屁股肥臀xxxxxx| 欧洲人成人精品| www.欧美日韩| 国产精品亚洲第一| 国产在线精品一区二区不卡了 | 国产精品羞羞答答xxdd | 亚洲综合一区在线| 国产精品久久久久久久久免费相片 | 91性感美女视频| 国产一二精品视频| 久久精品国产99国产精品| 日韩成人dvd| 亚洲国产日韩a在线播放性色| 亚洲色图一区二区三区| 国产亲近乱来精品视频| 久久久久久麻豆| 日韩一级黄色大片| 日韩欧美自拍偷拍| 这里只有精品视频在线观看| 欧美视频在线观看一区| 在线观看成人免费视频| 色94色欧美sute亚洲13| 91国产成人在线| 在线亚洲+欧美+日本专区| 色呦呦网站一区| 在线视频国产一区| 欧美图区在线视频| 欧美久久久久久久久| 91精品国产美女浴室洗澡无遮挡| 欧美三级日韩在线| 91精品国产黑色紧身裤美女| 欧美一三区三区四区免费在线看| 欧美日韩国产天堂| 欧美一级在线观看| 久久免费的精品国产v∧| 中文字幕欧美激情一区| 国产精品视频观看| 亚洲欧美另类图片小说| 樱花影视一区二区| 日日夜夜精品视频免费| 免费人成黄页网站在线一区二区 | 日本91福利区| 国产米奇在线777精品观看| 成人激情小说网站| 色天天综合色天天久久| 777欧美精品| 久久久久久电影| 亚洲视频资源在线| 午夜欧美2019年伦理| 男女激情视频一区| 国产精品一区二区久激情瑜伽| 成人黄色777网| 欧美综合一区二区| 日韩情涩欧美日韩视频| 国产精品久久久久久久第一福利| 亚洲综合无码一区二区| 免费精品视频在线| 成人av资源下载| 6080国产精品一区二区| 久久精品一区二区三区不卡牛牛| 亚洲视频 欧洲视频| 久久电影国产免费久久电影| 成人av网站在线观看| 欧美丰满少妇xxxxx高潮对白| 国产欧美一区二区三区鸳鸯浴| 夜夜亚洲天天久久| 国产麻豆精品在线| 欧美日韩另类一区| 欧美韩国日本不卡| 日韩国产在线观看| 99久久综合狠狠综合久久| 欧美一区二区三区的| 最新高清无码专区| 国产精品一二三区| 制服.丝袜.亚洲.另类.中文 | 奇米精品一区二区三区在线观看| 成人教育av在线| 精品久久久三级丝袜| 亚洲宅男天堂在线观看无病毒| 国产精品亚洲第一区在线暖暖韩国| 欧美亚洲动漫制服丝袜| 欧美国产1区2区| 捆绑紧缚一区二区三区视频 | 欧美激情在线一区二区| 亚洲.国产.中文慕字在线| 国产福利精品一区二区| 91精品国产综合久久福利| 中文字幕亚洲精品在线观看| 国产一区二区91| 制服丝袜av成人在线看| 亚洲亚洲精品在线观看| 91香蕉视频mp4| 国产精品网站一区| 国产一区二区三区在线观看精品 | 国产一二精品视频| 日韩欧美一二三四区| 亚洲成人av福利| 色婷婷久久久久swag精品| 国产精品乱码一区二区三区软件 | 亚洲最新视频在线播放| proumb性欧美在线观看| 国产午夜久久久久| 国产福利一区在线| 日本一区二区三区四区 | 欧美高清视频一二三区| 亚洲精品一二三| 色狠狠一区二区| 亚洲激情av在线| 欧美影视一区在线| 午夜精品久久久久久不卡8050| 欧美三级韩国三级日本三斤| 午夜视频在线观看一区二区三区|