


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
用VB實現(xiàn)班主任工作的電子化
摘要:本文探討了如何利用VB,讀取數(shù)據(jù)庫中的數(shù)據(jù),通過MicrosoftMAPIControls6.0控件,利用OutlookExpress,從而實現(xiàn)成績通知單以E-mail的形式自動寄發(fā)。關(guān)鍵字:VB,E-mail,MAPI,自動寄發(fā)一、問題提出每期期未,寄發(fā)學(xué)生成績通知單都是班主任的例行工作,然而,現(xiàn)在大多數(shù)人仍然還采用原始的平信寄發(fā)方式,并且由于平信很容易丟失而導(dǎo)致以前所做的工作(如抄錄學(xué)生期末成績、寫出學(xué)生的學(xué)期鑒定,填寫學(xué)生成績通知單和寫、寫信封、寄發(fā)通知書等)前功盡棄,同時由于許多學(xué)生放假后并沒有回家,如外去打工或因種種原因沒有回家而無法收到信件。隨著INTERNET技術(shù)的不斷普及,電子郵件已經(jīng)開始進入尋常百姓家,它以快速、方便、可以異地查閱而逐漸代替普通的信件,如果你的學(xué)生(或家長)都有E-mail,我們以E-mail來寄發(fā)學(xué)生的成績通知單了,這樣就可以減少上述弊端。但一個個填寫每個學(xué)生的收件人地址和相關(guān)的數(shù)據(jù)(如各門功課的成績、評語),既枯燥又煩鎖,下面我們將探討如何利用VB來讀取學(xué)生成績數(shù)據(jù)庫中的數(shù)據(jù),通過E-mail實現(xiàn)學(xué)生成績通知單的自動寄發(fā)。二、工作原理學(xué)生成績通知單各學(xué)校雖然有所不同,但大都大同小異,通常包括:學(xué)生各學(xué)科的成績,操行分,班主任評語等內(nèi)容(如上圖)。如果這些內(nèi)容都在數(shù)據(jù)庫中,我們可以通過VB訪問數(shù)據(jù)庫來讀取數(shù)據(jù)庫中用戶的E-mail地址、成績及評語,再通過VB的MicrosoftMAPIControls6.0控件中的MAPISession和MAPIMessages兩個控件進行電子郵件的管理,利用OutlookExpress。就能實現(xiàn)同時給班上所有學(xué)生用E-mail的自動發(fā)送通知書了。但由于各個學(xué)校成績科目及多少不同,因此數(shù)據(jù)庫中字段數(shù)就會不同,為使程序具有通用性,因此,在設(shè)計時我們使用了自動讀取數(shù)據(jù)表中的字段個數(shù)和字段名,并自動在窗體上自動生成相對應(yīng)的文本框和標簽。三、程序設(shè)計1、
啟動VB后,新建一個標準的EXE工程2、
在“工具”菜單中選“部件”,在“控件”選項卡中選“MicrosoftMAPIControls6.0”,在控件工具箱中將郵件控件MAPIMessages和MAPISession兩個控件添加到窗體中。2、添加兩個命令按鈕,將其CAPTION屬性設(shè)計為“全部發(fā)送”和“退出”。3、添加一個數(shù)據(jù)控件(Data1),并設(shè)置“Connect”、“DataBaseName”和“RecordSource”對應(yīng)的屬性。上述三個控件最好放在窗體的下方。4.編寫源程序代碼:將下面的代碼添加到代碼窗口中Dimtxtobject(20),lblObject(20)DimSendToTextAsStringConstM_Subject="成績通知單"PrivateSubCommand2_Click()UnloadMeEndSub'定義一個用來回復(fù)(發(fā)送郵件)的函數(shù)PublicFunctionStarSend(T1,T2,T3)MAPIMessages1.MsgIndex=-1MAPIMessages1.RecipDisplayName=T1MAPIMessages1.MsgSubject=T2MAPIMessages1.MsgNoteText=T3MAPIMessages1.SessionID=MAPISession1.SessionID'MAPIMessages1.AttachmentPathName="e:\MyDocuments\注意事項.htm"'確定要發(fā)送的電子郵件的附件MAPIMessages1.SendEndFunctionPrivateSubCommand1_Click()Data1.Recordset.MoveFirstMAPISession1.SignOnDoWhileData1.Recordset.EOF=FalseSum=Sum+1'SendToText指的是發(fā)送郵件的內(nèi)容(郵件正文)SendToText=txtobject(1).Text+"同學(xué)"+Chr(13)+Chr(10)+"你好!"+Chr(13)+Chr(10)SendToText=SendToText+"現(xiàn)將你的成績通知你,希望你在假期注意復(fù)習(xí)功課!"+Chr(13)+Chr(10)'下面將自動獲得各學(xué)科的名稱和成績
Fori=3ToData1.Recordset.RecordCountSendToText=SendToText+lblObject(i).Caption+":"+txtobject(i).Text+"分"+Chr(13)+Chr(10)
NextSendToText=SendToText+"班主任:劉友生"+Chr(13)+Chr(10)SendToText=SendToText+"湖南省衡陽經(jīng)濟貿(mào)易學(xué)校"+Chr(13)+Chr(10)SendToText=SendToText+"發(fā)信日期:"+Data$+"發(fā)信時間:"+Time$GetTxtName’調(diào)用函數(shù)CallStarSend(txtobject(2).Text,M_Subject,SendToText)Data1.Recordset.MoveNextIfData1.Recordset.EOF=TrueThen
MsgBoxStr(Sum)+"個人員的成績通知單已經(jīng)發(fā)送完畢!",,"發(fā)送郵件"
EndEndIfLoopEndSubPrivateSubGetFieldNum()Data1.Recordset.MoveFirst'自動獲得數(shù)據(jù)表中字段數(shù)并在窗體中自動生成相應(yīng)文本框和標簽Fori=1ToData1.Recordset.Fields.Count
b$="Text_"+LTrim(Str(i))
b1$="Label_"+Trim(Str(i)
Settxtobject(i)=Form1.Controls.Add("VB.TextBox",b$)
SetlblObject(i)=Form1.Controls.Add("VB.Label",b1$)’下面是用來確定標簽和文本框中窗體中的位置
txtobject(i).Visible=True
lblObject(i).Visible=True
txtobject(i).Width=2000
lblObject(i).Width=1200
txtobject(i).Height=350
lblObject(i).Height=350
IfiMod2=0Thentxtobject(i).Left=4200lblObject(i).Left=3400
Elsetxtobject(i).Left=1200lblObject(i).Left=200
EndIf
Ifi>1Thentxtobject(i).Top=txtobject(i-1).Top+400lblObject(i).Top=txtobject(i-1).Top+400
Elsetxtobject(i).Top=300lblObject(i).Top=300
EndIf
IfiMod2=0Then
txtobject(i).Top=txtobject(i-1).Top
lblObject(i).Top=txtobject(i-1).Top
EndIfNexttxtobject(i-1).Width=Form1.Width-1500IfiMod2=1ThenlblObject(i-1).Left=200lblObject(i-1).Top=lblObject(i-1).Top+400txtobject(i-1).Left=1200txtobject(i-1).Top=txtobject(i-1).Top+400EndIfEndSubPublicFunctionGetLabelName()Fori=1ToData1.Recordset.Fields.Counttxtobject(i).Text=Data1.Recordset.Fields(i-1)lblObject(i).Caption=Data1.Recordset.Fields(i-1).SourceFieldNextEndFunctionPublicFunctionGetTxtName()Fori=1ToData1.Recordset.Fields.Counttxtobject(i).Text=Data1.Recordset.Fields(i-1)NextEndFunctionPrivateSubForm_Activate()Data1.Recordset.MoveFirstGetFieldNumGetLabelNameEndSub四、幾點說明1、
本程序在WIN98、IE5.0、撥號上網(wǎng)下調(diào)試通過。2、
本程序具有許多自動功能
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025云南省建筑安全員知識題庫
- 鄭州工業(yè)安全職業(yè)學(xué)院《大數(shù)據(jù)快速運算》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧裝備制造職業(yè)技術(shù)學(xué)院《醫(yī)學(xué)微生物學(xué)實驗轉(zhuǎn)專業(yè)》2023-2024學(xué)年第二學(xué)期期末試卷
- 山東管理學(xué)院《診斷胸肺檢查》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣州城建職業(yè)學(xué)院《電子商務(wù)技術(shù)基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 太原科技大學(xué)《城市規(guī)劃與管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 玉溪職業(yè)技術(shù)學(xué)院《軋制工藝學(xué)管材生產(chǎn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 商丘職業(yè)技術(shù)學(xué)院《表面活性劑化學(xué)與應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 五年級教師2025年第一季度工作計劃
- 做賬實操-商貿(mào)企業(yè)成本核算方法
- 【思維導(dǎo)圖速記】2021年小學(xué)英語三年級下冊各單元知識點總結(jié)(新人教版 聯(lián)想記憶)課件
- 新版手機開發(fā)項目流程圖
- 折彩粽的手工制作ppt公開課
- 發(fā)證機關(guān)所在地區(qū)代碼表
- 建筑垃圾回收利用統(tǒng)計臺賬
- 《不一樣的你我他》(完美)課件
- 外研版一起點二年級下冊英語全冊課件
- 原油電脫鹽電脫水技術(shù)
- XE82000--午山風(fēng)電場風(fēng)機定檢作業(yè)指導(dǎo)書
- 前列腺癌臨床路徑(最全版)
- 深圳大學(xué)《數(shù)字信號處理》2009年期末考試試卷A卷
評論
0/150
提交評論