freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件工程實習(xí)報告—學(xué)生成績管理系統(tǒng)的開發(fā)設(shè)計(編輯修改稿)

2025-01-20 16:24 本頁面
 

【文章內(nèi)容簡介】 (CException,e) { TCHAR szError[100]。 eGetErrorMessage(szError,100)。 AfxMessageBox(szError)。 } 13 END_CATCH 2. 身份驗證 : void CStudent_systemDlg::OnOK() { // TODO: Add extra validation here //身份驗證 CString sql。 CRecordset rs(amp。m_db)。 thisUpdateData(true)。 if(()==1) //單選框控件函數(shù) ,返回值為 1 時是管理員登陸 { sql = select * from manager WHERE(id=+m_id+)。 //要執(zhí)行的 SQL 語句 } else //教師登陸 { sql = select * from teacher WHERE(id=+m_id+)。 //要執(zhí)行的 SQL 語句 ,查詢 name 為 m_name的記錄 } TRY { (AFX_DB_USE_DEFAULT_TYPE,sql)。 if(!()amp。amp。!()) //打開查詢記錄 { (password,sql)。 //得到數(shù)據(jù) (用戶密碼 ) if(sql==m_password) { if(()==1) { manager obj。 (amp。m_db)。 thisEndDialog(true)。 ()。 } else { teacher obj。 (amp。m_db)。 thisEndDialog(true)。 ()。 } } else { thisMessageBox(密碼不正確 !)。 } } else { thisMessageBox(該用戶不存在 .)。 return。 } ()。 } CATCH(CDBException,ex) { AfxMessageBox(exm_strError)。 AfxMessageBox(exm_strStateNativeOrigin)。 } AND_CATCH(CMemoryException,pEx) { pExReportError()。 AfxMessageBox(_T(memory exception))。 } 14 END_CATCH thisUpdateData(false)。 } 3.下面以 學(xué)籍管理中 的 班級管理為例 詳細 介紹系統(tǒng)中關(guān)于數(shù)據(jù)庫的編輯,其他模塊界面的代碼也是類似的。這個是 “ 班級管理 ” 的界面: “班級管理”界面 “班級管理”對話框中的控件類型、 ID 及說明如下表: 控件類型 ID 屬性、變量或函數(shù) Combo Box IDC_COMBO1 CComboBox 類變量 m_bo, 映射函數(shù) OnSelchangeCombo1() Edit Box IDC_EDIT2 CString 類變量 m_session(屆別 ), 映射函數(shù) OnChangeEdit2() Edit Box IDC_EDIT3 CString 類變量 m_class(班別 ), 映射函數(shù) OnChangeEdit2() Edit Box IDC_EDIT4 CString 類變量 m_number(學(xué)生人數(shù) ), 映射函數(shù) OnChangeEdit2() Edit Box IDC_EDIT5 CString 類變量 m_date(入學(xué)時間 ), 映射函數(shù) OnChangeEdit2() Edit Box IDC_EDIT6 CString 類變量 m_id(班級編號 ID), List Control IDC_LIST1 CListCtrl 類變量 m_ListCtrl, 映射函數(shù) OnClickList1 Button IDC_BUTTON1 屬性“添加”,映射函數(shù) OnButton1() Button IDC_BUTTON2 屬性“修改”,映射函數(shù) OnButton2() Button IDC_BUTTON3 屬性“刪除”,映射函數(shù) OnButton3() “班級管理”控件列表 15 1) 為了在 edit_class 類中操作數(shù)據(jù)庫,定義了一個數(shù)據(jù)庫指針 CDatabase * m_db 及一個函數(shù) setdb(CDatabase * db),來接收從登陸界面?zhèn)魅氲?數(shù)據(jù)庫地址 。 void edit_class::setdb(CDatabase * db) //接受已連接的數(shù)據(jù)庫 { m_db=db。 } 2) 控件的初始化 , 代碼: BOOL edit_class::OnInitDialog() { CDialog::OnInitDialog()。 // TODO: Add extra initialization here LV_COLUMN lvColumn。 //list control 列表的 初始化 =LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH。 =LVCFMT_LEFT。 =100。 =0。 =班級編號 。 (0,班級編號 ,LVCFMT_LEFT,85)。 =1。 =學(xué)院 。 (1,學(xué)院 ,LVCFMT_LEFT,48)。 =2。 (2,屆別 ,LVCFMT_LEFT,48)。 =3。 (3,班別 ,LVCFMT_LEFT,48)。 =4。 (4,人數(shù) ,LVCFMT_LEFT,48)。 =5。 (5,入學(xué)日期 ,LVCFMT_LEFT,100)。 int i。 CRecordset rs(m_db)。 TRY { //打開所有已有班級的數(shù)據(jù) ,并顯示在列表上 . (AFX_DB_USE_DEFAULT_TYPE,select * from class order by id)。 while(!()) { (id,m_id)。 (institute,m_xueyuan_id)。 (session,m_session)。 (class,m_class)。 (number,temp)。 (date,m_date)。 i=(0,m_id)。 //輸出到列表 (i,1,m_xueyuan_id)。 (i,2,m_session)。 (i,3,m_class)。 (i,4,temp)。 (i,5,m_date)。 ()。 } ()。 } CATCH(CDBException,ex) { AfxMessageBox(exm_strError)。 AfxMessageBox(exm_strStateNativeOrigin)。 } AND_CATCH(CMemoryException,pEx) 16 { pExReportError()。 AfxMessageBox(_T(memory exception))。 } END_CATCH //讀取學(xué)院列表 ,并刷新列表 . int n。 i=0。 (AFX_DB_USE_DEFAULT_TYPE,select * from institute order by id)。 while(!()amp。amp。!()) { TRY { (name,m_xueyuan_name)。 n=(m_xueyuan_name)。 //刷新下拉列表 (n,i)。 ()。 } CATCH(CDBException,ex) { AfxMessageBox(exm_strError)。 AfxMessageBox(exm_strStateNativeOrigin)。 } AND_CATCH(CMemoryException,pEx) { pExReportError()。 AfxMessageBox(_T(memory exception))。 } END_CATCH i++。 } ()。 m_xueyuan_name=。 (0)。 return TRUE。 // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } 3) 在該 對話框,班級的編號 (或叫 ID)是由學(xué)院,屆別,班別組合而成的,組合由程序自動完成,此功能是通過 3 個 Edit Box 的響應(yīng)函數(shù)來實現(xiàn)的: void edit_class::OnChangeEdit2() { // TODO: If this is a RICHEDIT control, the control will not // send this notification unless you override the CDialog::OnInitDialog() // function and call CRichEditCtrl().SetEventMask() // with the ENM_CHANGE flag ORed into the mask. // TODO: Add your control notification handler code here thisUpdateData(true)。 m_id=m_xueyuan_id+m_session+m_class。 thisUpdateData(false)。 } void edit_class::OnChangeEdit3() { thisUpdateData(true)。 m_id=m_xueyuan_id+m_session+m_class。 thisUpdateData(false)。 } void edit_class::OnChangeEdit4() { thisUpdateData(true)。 m_id=m_xueyuan_id+m_session+m_class。 thisUpdateData(false)。 } 17 4) Combo Box 控件 COMBO1 的 響應(yīng)函數(shù) : void edit_class::OnSelchangeCombo1() //下拉列表的響應(yīng)函數(shù) { // TODO: Add your control notification handler code here CString sql。 (select * from institute where name=39。%s39。,m_xueyuan_name)。 CRecordset rs(m_db)。 thisUpdateData(true)。 ((),m_xueyuan_name)。 (AFX_DB_USE_DEFAULT_TYPE,sql)。 if(!()amp。amp。!()) { TRY {
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1