- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用VB实现班主任工作的电子化论文.doc
用VB实现班主任工作的电子化论文
摘要:本文探讨了如何利用VB,读取数据库中的数据,通过Microsoft MAPI Controls 6.0控件,利用Outlook Express,从而实现成绩通知单以E-mail的形式自动寄发。
关键字:VB,E-mail,.freelail,我们以E-mail来寄发学生的成绩通知单了,这样就可以减少上述弊端。但一个个填写每个学生的收件人地址和相关的数据(如各门功课的成绩、评语),既枯燥又烦锁,下面我们将探讨如何利用VB来读取学生成绩数据库中的数据,通过E-mail实现学生成绩通知单的自动寄发。
二、工作原理
学生成绩通知单各学校虽然有所不同,但大都大同小异,通常包括:学生各学科的成绩,操行分,班主任评语等内容(如上图)。如果这些内容都在数据库中,我们可以通过VB访问数据库来读取数据库中用户的E-mail地址、成绩及评语,再通过VB的Microsoft MAPI Controls 6.0控件中的MAPI Session和MAPI Messages两个控件进行电子邮件的管理,利用OutlookExpress。就能实现同时给班上所有学生用E-mail的自动发送通知书了。但由于各个学校成绩科目及多少不同,因此数据库中字段数就会不同,为使程序具有通用性,因此,在设计时我们使用了自动读取数据表中的字段个数和字段名,并自动在窗体上自动生成相对应的文本框和标签。
三、程序设计
1、 启动VB后,新建一个标准的EXE工程
2、 在“工具”菜单中选“部件”,在“控件”选项卡中选“Microsoft MAPI Controls 6.0”,在控件工具箱中将邮件控件MAPIMessages和MAPISession两个控件添加到窗体中。
2、添加两个命令按钮,将其CAPTION属性设计为“全部发送”和“退出”。
3、添加一个数据控件(Data1),并设置“Connect”、“DataBaseName”和“RecordSource”对应的属性。
上述三个控件最好放在窗体的下方。
4.编写源程序代码:将下面的代码添加到代码窗口中
Dim txtobject(20), lblObject(20)
Dim SendToText As String
Const M_Subject = 成绩通知单
Private Sub mand2_Click()
Unload Me
End Sub
定义一个用来回复(发送邮件)的函数
Public Function StarSend(T1, T2, T3)
MAPIMessages1.MsgIndex = -1
MAPIMessages1.RecipDisplayName = T1
MAPIMessages1.MsgSubject = T2
MAPIMessages1.MsgNoteText = T3
MAPIMessages1.SessionID = MAPISession1.SessionID
MAPIMessages1.AttachmentPathName = e:/My Documents/注意事项.htm 确定要发送的电子邮件的附件
MAPIMessages1.Send
End Function
Private Sub mand1_Click()
Data1.Recordset.MoveFirst
MAPISession1.SignOn
Do _Subject, SendToText)
Data1.Recordset.MoveNext
If Data1.Recordset.EOF = True Then
MsgBox Str(Sum) + 个人员的成绩通知单已经发送完毕!, , 发 送 邮 件
End
End If
Loop
End Sub
Private Sub GetFieldNum()
Data1.Recordset.MoveFirst
自动获得数据表中字段数并在窗体中自动生成相应文本框和标签
For i = 1 To Data1.Recordset.Fields.Count
b$ = Text_ + LTrim(Str(i))
b1$ = Label_ + Trim(Str(i)
Set txtobject(i) = Form1.Controls.Add(VB.TextBox, b$)
Set lblObject(i) = Form1.Controls.Add(VB.Label, b1$)
’下面是用来确定标签和文本框中窗体中的位置
txtobject(i).Visible = True
lblObject(i).Visible = True
txtobject(i).od 2 = 0 Then
txtobject(i).L
文档评论(0)