📄 subjectlist.cpp
字号:
// SubjectList.cpp: implementation of the SubjectList class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "SM.h"
#include "subject.h"
#include "SubjectList.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
//##ModelId=40A481F2014A
SubjectList::SubjectList(CListCtrl *plist):BaseList(plist)
{
}
//##ModelId=40A481F20158
SubjectList::~SubjectList()
{
}
//##ModelId=40A481F20149
void SubjectList::Load()
{
Clear();
LoadData();
CString s;
vector<Subject>::iterator iter;
long i = 0;
for(iter=Subjects.begin(), i=0; iter!=Subjects.end(); iter++, i++)
{
s.Format("%3d", iter->ID);
pList->InsertItem(i, s);
pList->SetItem(i, 1, LVIF_TEXT, iter->Title, 0, 0, 0, 0);
s.Format("%ld", iter->Credit);
pList->SetItem(i, 2, LVIF_TEXT, s, 0, 0, 0, 0);
pList->SetItemData(i, iter->ID);
}
}
//##ModelId=40A481F20148
void SubjectList::Init()
{
pList->InsertColumn(0, _T("ID"), LVCFMT_LEFT, 60);
pList->InsertColumn(1, _T("科目名称"), LVCFMT_LEFT, 120);
pList->InsertColumn(2, _T("学分"), LVCFMT_LEFT, 80);
}
//##ModelId=40A481F20129
void SubjectList::Clear()
{
BaseList::Clear();
Subjects.clear();
}
//##ModelId=40A481F20128
Subject& SubjectList::GetSelectSubject()
{
ASSERT(IsSelected()==true);
vector<Subject>::iterator iter;
long id = GetSelectedData();
for(iter=Subjects.begin(); iter!=Subjects.end(); iter++)
if((*iter).ID==id)
return *iter;
return *iter;
}
//##ModelId=40A481F2011B
long SubjectList::Search(CString title)
{
int i = Find(1, title);
if(i!=-1)
SetSelected(i);
return i;
}
//##ModelId=40A481F20119
void SubjectList::SearchID(long id)
{
CString s;
s.Format("%ld", id);
SetSelected(Find(0, s));
}
//##ModelId=40A481F2010B
void SubjectList::LoadData()
{
Subjects.clear();
CDaoTableDef TD(&theDatabase);
TD.Open("subject");
CDaoRecordset RS;
RS.Open(&TD);
while(!RS.IsEOF())
{
Subjects.push_back(Subject(RS.GetFieldValue("ID").lVal,
V_BSTRT(&RS.GetFieldValue("subject")),
RS.GetFieldValue("credit_hour").lVal
)
);
RS.MoveNext();
}
RS.Close();
TD.Close();
}
//##ModelId=40A481F2010A
void SubjectList::InitForTeachingSet()
{
pList->InsertColumn(0, _T("ID"), LVCFMT_LEFT, 40);
pList->InsertColumn(1, _T("科目名称"), LVCFMT_LEFT, 100);
pList->InsertColumn(2, _T("学分"), LVCFMT_LEFT, 50);
}
//##ModelId=40A481F20109
void SubjectList::LoadForTeachingSet()
{
Clear();
LoadData();
CString s;
vector<Subject>::iterator iter;
long i = 0;
for(iter=Subjects.begin(), i=0; iter!=Subjects.end(); iter++, i++)
{
s.Format("%3d", iter->ID);
pList->InsertItem(i, s);
pList->SetItem(i, 1, LVIF_TEXT, iter->Title, 0, 0, 0, 0);
s.Format("%ld", iter->Credit);
pList->SetItem(i, 2, LVIF_TEXT, s, 0, 0, 0, 0);
pList->SetItemData(i, iter->ID);
}
SetSelected(0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -