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

正文內(nèi)容

某某公司考勤管理系統(tǒng)設(shè)計(jì)畢業(yè)論文(編輯修改稿)

2025-07-23 16:42 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 圖43 主對(duì)話框窗口登錄成功后出現(xiàn)的主界面由“上下班時(shí)間設(shè)置”,“出勤記錄”,“考勤統(tǒng)計(jì)”,“重新登錄”,“退出”五個(gè)功能按鈕組成。單擊主對(duì)話框中的各個(gè)按鈕即可顯示相應(yīng)的對(duì)話框。其中“重新登錄”按鈕用于回到登錄對(duì)話框,并且隱藏主對(duì)話框;“退出”按鈕直接退出應(yīng)用程序;“上下班時(shí)間設(shè)置”按鈕用來(lái)彈出上下班時(shí)間設(shè)置對(duì)話框;“出勤記錄”按鈕用來(lái)彈出考勤修改對(duì)話框。單擊“考勤統(tǒng)計(jì)”按鈕會(huì)出現(xiàn)統(tǒng)計(jì)對(duì)話框。2.用戶(hù)登錄后即顯示主對(duì)話框口,如圖43所示,主對(duì)話框包括5個(gè)按鈕,分別實(shí)現(xiàn)5項(xiàng)功能,主要控件類(lèi)型、ID和對(duì)應(yīng)的成員變量及說(shuō)明如表42所示。封裝主對(duì)話框的類(lèi)是CAttendanceDlg.表42主對(duì)話框窗口控件列表控件類(lèi)型ID成員變量說(shuō)明Static TextIDC_STATIC_HEAD無(wú)“公司考勤管理系統(tǒng)”靜態(tài)文本ButtonIDC_BTN_CONFIG無(wú)“上下班是設(shè)置”按鈕ButtonIDC_BTN_RECORD無(wú)“出勤記錄”按鈕ButtonIDC_BTN_STATISTICS無(wú)“考勤統(tǒng)計(jì)”按鈕ButtonIDC_BTN_RELOGIN無(wú)“重新登錄”按鈕ButtonIDC_BTN_EXIT無(wú)“退出”按鈕 主對(duì)話框窗口代碼在CAttendanceDlg中定義下列成員變量:public: CBrush m_brush CStatDlg* m_pStatDlg。 CAttDlg* m_pAttDlg。 CFont m_font。對(duì)話框中5個(gè)按鈕的功能主要是顯示相應(yīng)的對(duì)話框,各按鈕的BN_CLICKED事物處理和退出代碼如下:void CAttendanceDlg::OnBtnExit() { EndDialog(IDCANCEL)。 // 退出主對(duì)話框,關(guān)閉程序}void CAttendanceDlg::OnBtnRelogin() { // 隱藏主對(duì)話框 ShowWindow(SW_HIDE)。 // 顯示登錄對(duì)話框 CLoginDlg dlg。 if(()==IDOK) { ShowWindow(SW_SHOW)。 // 顯示對(duì)話框 } else EndDialog(IDCANCEL)。 // 退出程序}void CAttendanceDlg::OnBtnConfig() { // 顯示工作時(shí)間設(shè)置對(duì)話框 CWorkplanDlg dlg。 ()。}void CAttendanceDlg::OnBtnRecord() { // 非模態(tài)顯示出勤記錄對(duì)話框 if(!m_pAttDlg) // 指針為空,創(chuàng)建對(duì)話框 { m_pAttDlg=new CAttDlg()。 m_pAttDlgCreate(IDD_DLG_ATTENDANCE, this)。 m_pAttDlgShowWindow(SW_SHOW)。 } else // 對(duì)話框已創(chuàng)建 m_pAttDlgShowWindow(SW_SHOW)。 // 顯示窗口}void CAttendanceDlg::OnBtnStatistics() { // 非模態(tài)顯示考勤統(tǒng)計(jì)對(duì)話框 if(!m_pStatDlg) // 指針為空,創(chuàng)建對(duì)話框 { m_pStatDlg=new CStatDlg()。 m_pStatDlgCreate(IDD_DLG_STAT, this)。 m_pStatDlgShowWindow(SW_SHOW)。 } else // 對(duì)話框已創(chuàng)建 m_pStatDlgShowWindow(SW_SHOW)。 // 顯示窗口}4.4上下班時(shí)間設(shè)置對(duì)話框1.上下班時(shí)間設(shè)置對(duì)話框如圖44所示。 圖44上下班時(shí)間設(shè)置對(duì)話框上下班時(shí)間對(duì)話框在系統(tǒng)中以模態(tài)對(duì)話框形式彈出,因此在沒(méi)有退出此對(duì)話框時(shí),所有其他的窗口都無(wú)法使用。上下班的時(shí)間包括兩對(duì)時(shí)間值,可根據(jù)需要設(shè)置。最后單擊“修改”按鈕,見(jiàn)時(shí)間設(shè)置保存到“”文件中。單擊“恢復(fù)默認(rèn)設(shè)置”按鈕,系統(tǒng)會(huì)從“”文件中讀取保存的時(shí)間設(shè)置。如果該配置文件不存在,則用程序中默認(rèn)的時(shí)間來(lái)代替。、ID和對(duì)應(yīng)的成員變量及說(shuō)明如表43所示。表43下班時(shí)間設(shè)置對(duì)話框控件列表控件類(lèi)型ID成員變量說(shuō)明Data Time PickerIDC_WORKSTAT_DATETIMEPICKER1m_Time1上午上班時(shí)間Data Time PickerIDC_WORKSTAT_DATETIMEPICKER2m_Time2中午下班時(shí)間Data Time PickerIDC_WORKSTAT_DATETIMEPICKER3m_Time3下午上班時(shí)間Data Time PickerIDC_WORKSTAT_DATETIMEPICKER4m_Time4下班下班時(shí)間ButtonIDC_WORKPLAN_MODIFY無(wú)“修改”按鈕ButtonIDC_WORKSTAT_RESET無(wú)“恢復(fù)默認(rèn)設(shè)置”按鈕3.上下班時(shí)間設(shè)置對(duì)話框代碼:因?yàn)楣镜纳舷掳鄷r(shí)間相對(duì)固定,而且需要在統(tǒng)計(jì)時(shí)頻繁使用,所以不需要保存在數(shù)據(jù)庫(kù)中,所以采用INI設(shè)置文件來(lái)保存這些數(shù)據(jù)?!靶薷摹卑粹o的BN_CLICKED事件處理程序用于保存當(dāng)前的設(shè)置。void CWorkplanDlg::OnWorkplanModify() { CString strFileName=.\\。 // INI文件名UpdateData()。 // 更新數(shù)據(jù)WritePrivateProfileString(WorkPlan, Time1, (%H:%M:%S), strFileName)。WritePrivateProfileString(WorkPlan, Time2, (%H:%M:%S), strFileName)。WritePrivateProfileString(WorkPlan, Time3, (%H:%M:%S), strFileName)。WritePrivateProfileString(WorkPlan, Time4, (%H:%M:%S), strFileName)。}4.5考勤修改對(duì)話框1.考勤修改對(duì)話框如圖45所示。圖45 考勤修改對(duì)話考勤修改窗口包括4項(xiàng)記錄修改功能,分別對(duì)應(yīng)出勤記錄,加班記錄,請(qǐng)假記錄和出差記錄。這4項(xiàng)記錄的顯示使用同一個(gè)檢索條件。檢索條件包括時(shí)間范圍和員工,可根據(jù)需要設(shè)置。出勤記錄的添加是為了防止考勤出故障時(shí),保證記錄的完整性,在批量輸入時(shí),進(jìn)度條會(huì)顯示當(dāng)前完成的進(jìn)度。在出勤記錄列表的上方有兩個(gè)按鈕。一個(gè)用來(lái)刪除當(dāng)前的記錄,另一個(gè)用來(lái)激活檢索條件??记谛薷膶?duì)話框中其他三項(xiàng)記錄的添加和修改基本與出勤記錄類(lèi)似。2.、ID和對(duì)應(yīng)的成員變量及其說(shuō)明如表44所示。表44 考勤修改對(duì)話框的主要控件類(lèi)型控件類(lèi)型ID成員變量說(shuō)明Cheek BoxIDC_CHK_SEEKBYTIMEm_bseekbytime時(shí)間范圍選項(xiàng)Cheek BoxIDC_CHK_SEEKBYPERSONm_bseekbyperson員工選項(xiàng)Data Time PickerIDC_CHK_DATATIMEPICKER1m_StartTime起始時(shí)間Data Time PickerIDC_CHK_DATATIMEPICKER2m_EndTime結(jié)束時(shí)間Edit BoxIDC_EDT_SEEKPERSONIDm_strPersonID員工號(hào)Edit BoxIDC_EDT_SEEKPERSONNAMEm_strName姓名:為了使用CPropetrySheet和CPropetryPage,需要在類(lèi)定義中加入如下變量:CPage1 m_Page1。//出勤頁(yè)CPage1 m_Page2。//加班頁(yè)CPage1 m_Page3。//請(qǐng)假頁(yè)CPage1 m_Page4。//出差頁(yè)然后在OnInitDialog中添加以下代碼: (amp。m_Page1)。 // 加第1頁(yè) (amp。m_Page2)。 // 加第2頁(yè) (amp。m_Page3)。 // 加第3頁(yè) (amp。m_Page4)。 // 加第4頁(yè) (this, WS_CHILD | WS_VISIBLE, 0)。 // 創(chuàng)建窗口 (0, WS_EX_CONTROLPARENT)。 // 修改風(fēng)格 ( 0, WS_TABSTOP )。 // 修改風(fēng)格 // 設(shè)置窗口位置 ( NULL, 0, 100, 0, 0, SWP_NOZORDER | SWP_NOSIZE | SWP_NOACTIVATE )。1.添加修改出勤記錄屬性頁(yè)如圖451所示。出勤記錄的添加是為了防止考勤出故障時(shí),保證記錄的完整性,在批量輸入時(shí),進(jìn)度條會(huì)顯示當(dāng)前完成的進(jìn)度。在出勤記錄列表的上方有兩個(gè)按鈕。一個(gè)用來(lái)刪除當(dāng)前的記錄,另一個(gè)用來(lái)激活檢索條件。出選框用“OUT”表示,入選框用“IN”表示。當(dāng)輸入部門(mén)編號(hào)時(shí),自動(dòng)檢索部門(mén)名稱(chēng),當(dāng)輸入部門(mén)員工時(shí),檢索相應(yīng)信息。輸入部門(mén)編號(hào)或員工號(hào)可添加全部員工,部門(mén)員工和單個(gè)員工?!皠h除所選記錄”按鈕用于刪除列表中當(dāng)前所選記錄。“按條件檢索”按鈕用于激活檢索條件。圖451添加修改出勤記錄屬性頁(yè)在加入對(duì)話框時(shí),將其封裝類(lèi)設(shè)為從CPropertyPage繼承的CPage1類(lèi)。對(duì)話框中的主要控件類(lèi)型、ID和對(duì)應(yīng)的成員變量及其說(shuō)明如表45所示。表45添加修改出勤記錄屬性頁(yè)控件列表控件類(lèi)型ID成員變量說(shuō)明Edit BoxIDC_EDT_IOTIMEm_strIOTime出入時(shí)間Edit BoxIDC_EDT_DEPARTIDm_strDepartID部門(mén)編號(hào)Edit BoxIDC_EDT_DEPARTNAMEm_strDepartName部門(mén)名稱(chēng)Edit BoxIDC_EDT_PERSONIDm_strPersonID員工號(hào)Edit BoxIDC_EDT_PERSONNAMEm_strPersonName員工姓名Radio ButtonIDC_RADIO_OUT無(wú)“出”選項(xiàng)Radio ButtonIDC_RADIO_IN無(wú)“入”選項(xiàng)ButtonIDC_BIN_ADDALL無(wú)“全部員工”按鈕ButtonIDC_BIN_ADDDEPART無(wú)“部門(mén)員工”按鈕ButtonIDC_BIN_ADDPERSON無(wú)“單個(gè)員工”按鈕ButtonIDC_EDT_DELETEATTEND無(wú)“刪除所選記錄”按鈕ButtonIDC_EDT_SEEKIO無(wú)“按條件檢索”按鈕List ControlIDC_LISTm_clist出勤記錄列表3. 添加修改出勤記錄屬性頁(yè)代碼如下: 添加部門(mén)員工和全體員工出勤記錄的過(guò)程可以分解為添加單個(gè)員工記錄的過(guò)程,有以下子程序:// 添加出勤記錄函數(shù)void CPage1::IO_Add(CString strPersonID){ int counter。 // 用于計(jì)數(shù) CString strIO。 // 保存出入情況 CCounterRS rs_counter(amp。db)。 // 構(gòu)造計(jì)數(shù)器記錄表// 記錄編號(hào) = ID=39。A39。 // 設(shè)置過(guò)濾器,提取計(jì)數(shù)值 ()。 // 打開(kāi)計(jì)數(shù)器記錄表 counter=。 // 提取計(jì)數(shù)值 counter++。 // 計(jì)數(shù)值加1 ()。 // 編輯計(jì)數(shù)器 =counter。 // 保存當(dāng)前計(jì)數(shù) ()。 // 提交修改 ()。 // 關(guān)閉計(jì)數(shù)器記錄表// 添加記錄 // 判斷確定出入情況 if(((CButton*)GetDlgItem(IDC_RADIO_OUT))GetCheck()) strIO=OUT。 else strIO=IN。 // 轉(zhuǎn)換出入時(shí)間類(lèi)型 int nYear,nMonth,nDay,nHour,nMinute。 // 年,月,日,時(shí),分 sscanf((4), %d, amp。nYear)。 // 得到年 sscanf((5,2), %d, amp。nMonth)。 // 得到月 sscanf((8,2), %d, amp。nDay)。 // 得到日 sscanf((11,2), %d, amp。nHour)。 // 得到時(shí) sscanf((14,2), %d, amp。nMinute)。 // 得到分 // 得到出入時(shí)間 CTime IO_time(nYear,nMonth,nDay,nHour,nMinute,0)。 CAttendanceRS rs_attendance(amp。db)。 // 構(gòu)造考勤記錄表 ()。 // 打開(kāi)考勤記錄表 ()。 // 追加考勤記錄 =counter。 =strPersonID。 =strIO。 =IO_time。 ()。 ()。 // 關(guān)閉考勤記錄表 UpdateList(rs_attendance)。 // 更新列表框} 加班
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1