BOOL CAdminDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
CFont font;
font.CreatePointFont(300,"宋体");
GetDlgItem(IDC_STATIC_SHOW)->SetWindowText("欢迎来到学生选课系统");
GetDlgItem(IDC_STATIC_SHOW)->SetFont(&font);
HTREEITEM hRoot=m_Tree.InsertItem("管理员",0,0);
HTREEITEM hleaf=m_Tree.InsertItem("学生信息",1,1,hRoot);
HTREEITEM hleaf01=m_Tree.InsertItem("学生信息管理",2,2,hleaf);
// HTREEITEM hleaf02=m_Tree.InsertItem("学生信息添加",2,2,hleaf);
// HTREEITEM hleaf03=m_Tree.InsertItem("学生信息删除",2,2,hleaf);
HTREEITEM hleaf1=m_Tree.InsertItem("课程信息",1,1,hRoot);
HTREEITEM hleaf11=m_Tree.InsertItem("课程信息管理",2,2,hleaf1);
// HTREEITEM hleaf12=m_Tree.InsertItem("课程信息添加",2,2,hleaf1);
// HTREEITEM hleaf13=m_Tree.InsertItem("课程信息删除",2,2,hleaf1);
// HTREEITEM hleaf2=m_Tree.InsertItem("学生成绩",1,1,hRoot);
// HTREEITEM hleaf21=m_Tree.InsertItem("学生成绩管理",2,2,hleaf2);
// // HTREEITEM hleaf22=m_Tree.InsertItem("学生成绩添加",2,2,hleaf2);
// // HTREEITEM hleaf23=m_Tree.InsertItem("学生成绩删除",2,2,hleaf2);
HTREEITEM hleaf3=m_Tree.InsertItem("用户管理",1,1,hRoot);
HTREEITEM hleaf31=m_Tree.InsertItem("用户管理信息",2,2,hleaf3);
// HTREEITEM hleaf31=m_Tree.InsertItem("用户修改",2,2,hleaf3);
// HTREEITEM hleaf32=m_Tree.InsertItem("用户添加",2,2,hleaf3);
// HTREEITEM hleaf33=m_Tree.InsertItem("用户删除",2,2,hleaf3);
m_Tree.Expand(hRoot,TVE_EXPAND);
// HTREEITEM hleaf=m_Tree.InsertItem("学生信息",1,1,hRoot);
m_List.SetExtendedStyle(LVS_EX_FLATSB|LVS_EX_FULLROWSELECT|LVS_EX_HEADERDRAGDROP|LVS_EX_ONECLICKACTIVATE|LVS_EX_GRIDLINES);
m_List.InsertColumn(0,"学号",LVCFMT_LEFT,60);
// m_List.InsertColumn(1,"姓名",LVCFMT_LEFT,60);
// m_List.InsertColumn(2,"班级",LVCFMT_LEFT,60);
m_List.InsertColumn(1,"英语",LVCFMT_LEFT,60);
m_List.InsertColumn(2,"语文",LVCFMT_LEFT,60);
m_List.InsertColumn(3,"C",LVCFMT_LEFT,60);
m_List.InsertColumn(4,"C++",LVCFMT_LEFT,60);
m_List.InsertColumn(5,"计算机",LVCFMT_LEFT,60);
AddToList();
// OnClickList1();
// GetDlgItem(IDC_EDIT8)->EnableWindow(FALSE);
//连接数据库
CADO ado;
ado.CADOConnect();
//设置查询字符串
CString str;
str= "select * from student_xuank";
//创建记录集指针对象实例
//m_pRecordset.CreateInstance(__uuidof(Recordset));
_RecordsetPtr pRS = ado.Select(str);
//打开记录集
// m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,
// adLockOptimistic,adCmdText);
while(!pRS->adoEOF)
{
int m=0;
//m_List.SetExtendedStyle(LVS_EX_CHECKBOXES);
//m_ctlList.InsertItem(0,"");
// m_List.InsertItem(m, _T(""));
// m_List.SetCheck(m, FALSE);>GetItem(_variant_t("姓名"))->Value=_bstr_t("赵薇");
CString str;
str=(char*)(_bstr_t)(pRS->Fields->GetItem(_variant_t("english"))->Value);
//MessageBox(str);
//m_List.SetItemText(0,0,(char*)(_bstr_t)(pRS->Fields->GetItem(_variant_t("sno"))->Value));
//
// m_List.SetItemText(0,1,(char*)(_bstr_t)(pRS->Fields->GetItem(_variant_t("english"))->Value));
// m_List.SetItemText(0,2,(_bstr_t)pRS->GetCollect("chinese"));
// m_List.SetItemText(0,3,(_bstr_t)pRS->GetCollect("c"));
// m_List.SetItemText(0,4,(_bstr_t)pRS->GetCollect("cplusplus"));
// m_List.SetItemText(0,5,(_bstr_t)pRS->GetCollect("computer"));
//
m++;
//将记录集指针移动到下一条记录
pRS->MoveNext();
}
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CAdminDlg::OnClickTree1(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
*pResult = 0;
}
void CAdminDlg::OnDblclkTree1(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
m_hTreeItem = m_Tree.GetSelectedItem();
// HTREEITEM hroot=m_hTreeItem.GetParent();
// CString S1 = m_Tree.GetItemText(hroot);
// if(m_Tree.GetItemText(m_hTreeItem)=="课程信息管理")
// {
// CKCADDDlg mydlg;
// mydlg.DoModal();
// return;
// }
if(m_Tree.GetItemText(m_hTreeItem)=="学生信息管理")
{
CKCADDDlg mydlg;
mydlg.DoModal();
return;
}
if(m_Tree.GetItemText(m_hTreeItem)=="课程信息管理")
{
CKCMODDlg mydlg;
mydlg.DoModal();
return;
}
if(m_Tree.GetItemText(m_hTreeItem)=="用户管理信息")
{
CUSERDlg mydlg;
mydlg.DoModal();
return;
}
*pResult = 0;
}
//static CKCDELDlg dlg;
void CAdminDlg::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
// //Name=atoi(m_strName);
// TODO: Add your control notification handler code here
int pos=m_List.GetSelectionMark();//当前选中的行索引
// CEdit* pBoxOne;
// pBoxOne = (CEdit*) GetDlgItem(IDC_EDIT8);
// GotoDlgCtrl(pBoxOne);
// GetDlgItem(IDC_EDIT8)->EnableWindow(FALSE);
int n;
n=m_List.GetItemCount();
// dlg.DoModal();
//MessageBox((_variant_t)n);
// if (dlg.m_sno==0)
// {
// dlg.GetDlgItem(dlg.IDC_EDIT1)->EnableWindow(FALSE);
// }
if (m_List.GetSelectionMark()==-1)
{
MessageBox("请选择用户");
return;
}
CKCDELDlg dlg;
dlg.str5=dlg.m_sno=m_List.GetItemText(pos,0);
dlg.str=dlg.m_enlish=m_List.GetItemText(pos,1);
//MessageBox(dlg.str);
dlg.str1=dlg.m_chinese=m_List.GetItemText(pos,2);
dlg.str2=dlg.m_computer=m_List.GetItemText(pos,3);
dlg.str3=dlg.m_c=m_List.GetItemText(pos,4);
dlg.str4=dlg.m_cplus=m_List.GetItemText(pos,5);
UpdateData(FALSE);
//dlg.m_snum.EnableWindow(FALSE);
// dlg.m_ctleng.EnableWindow(FALSE);
dlg.DoModal();
//
// if (dlg.m_english=="")
// {
// dlg.m_snum.EnableWindow(FALSE);
// }
// OnInitDialog();
*pResult = 0;
}
void CAdminDlg::AddToList()
{
m_List.DeleteAllItems();
//连接数据库
CADO ado;
ado.CADOConnect();
//设置查询字符串
CString str;
str= "select * from student_xuank";
//创建记录集指针对象实例
//m_pRecordset.CreateInstance(__uuidof(Recordset));
_RecordsetPtr pRS = ado.Select(str);
//打开记录集
// m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,
// adLockOptimistic,adCmdText);
while(!pRS->adoEOF)
{
int m=0;
//m_List.SetExtendedStyle(LVS_EX_CHECKBOXES);
//m_ctlList.InsertItem(0,"");
m_List.InsertItem(m, _T(""));
// m_List.SetCheck(m, FALSE);>GetItem(_variant_t("姓名"))->Value=_bstr_t("赵薇");
m_List.SetItemText(0,0,(char*)(_bstr_t)(pRS->Fields->GetItem(_variant_t("sno"))->Value));
//m_user=(char*)_bstr_t(m_FieldsPtr->Item["username"]->Value);//这两个是字符型的,读取和写都没问题
// _variant_t vt;
// vt = (pRS->Fields->GetItem(_variant_t("english"))->Value);
// bool m_admin = -vt.boolVal;
m_List.SetItemText(0,1,(char*)(_bstr_t)(pRS->Fields->GetItem(_variant_t("english"))->Value));
//m_List.SetItemText(0,1,(_bstr_t)m_admin);
m_List.SetItemText(0,2,(_bstr_t)pRS->GetCollect("chinese"));
m_List.SetItemText(0,3,(_bstr_t)pRS->GetCollect("c"));
m_List.SetItemText(0,4,(_bstr_t)pRS->GetCollect("cplusplus"));
m_List.SetItemText(0,5,(_bstr_t)pRS->GetCollect("computer"));
m++;
//将记录集指针移动到下一条记录
pRS->MoveNext();
}
}
void CAdminDlg::OnButton1()
{
// TODO: Add your control notification handler code here
UpdateData(true);
CADO ado;
ado.CADOConnect();
CString temp,str,str1;
_variant_t ra;
// // int k=m_combo.GetCurSel();
// if (k==0)
// {
// str1="student";
//
// }
// else
// {
// str1="admin";
// }
// if (m_name=="")
// {
// MessageBox("用户名不能为空");
// GetDlgItem(IDC_EDIT4)->SetFocus();
// }
// else if (m_pass1!=m_pass2)
// {
// MessageBox("密码不符");
// GetDlgItem(IDC_EDIT5)->SetFocus();
// m_pass1=m_pass2="";
// UpdateData(FALSE);
//
// }
// else
// {
// str.Format("insert into login values('%s','%s','%s')",m_name,m_pass1,str1);
// //str.Format("insert into ");
// ado.ExecuteSQL(_bstr_t(str));
// showData();
// m_name=m_pass1=m_pass2="";
// MessageBox("添加用户成功");
// }
}
void CAdminDlg::OnRclickList1(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
UpdateData(true);
CADO ado;
ado.CADOConnect();
if (m_List.GetSelectionMark()==-1)
{
MessageBox("请选择用户");
return;
}
int pos=m_List.GetSelectionMark();//当前选中的行索引
CString str1=m_List.GetItemText(pos,0);
CString str;
str.Format("delete from student_xuank where sno='%s'",str1);
MessageBox(str1);
ado.ExecuteSQL(_bstr_t(str));
MessageBox("删除成功");
AddToList();
*pResult = 0;
}
-------------------------------未完待续---------------------------------