考虑到时间上的紧迫性,还有用户操作的易用性,以后上网查询所需数据库的兼容性,因此决定选用access来开发。access具有强大的窗体创建、报表打印、vba编程功能,足以胜任大部分小型数据库应用系统的开发。
创建数据库和表
1. 打开microsoft office access,创建一个空数据库,与相片的分类目录放在同一个文件夹下。
2. 使用“文件→获取外部数据→导入”功能将excel表直接导入access中,保存为“证书信息”表。
创建证书信息报表
1. 创建“证书信息”报表,先插入一个“图像”控件,设置其图片属性为证书模板图片,设置其大小为证书模板的大小,设置其可见性为否,这样有利于证书信息的排版,且不会打印出来;再依次插入要打印的字段列表,设置好字体和字号;最后再插入一个“图像”控件,放置于打印相片的地方,设置其大小为相片的大小,设置其名称为“stuimg”。
2. 依次点击菜单栏“视图→代码”命令,进入vba代码编写窗口,编写如下代码:
private sub 主体_format(cancel as integer, formatcount as integer)
dim imgpath as string
' 依据应用程序路径、认证项目名称、姓名得到相片路径
imgpath = application.currentproject.path +"/" +认证项目.text +"/"+ 姓名.text+".jpg"
' 判断照片是否存在,如果不存在则显示一张空白的图片。
if dir(imgpath) = "" then imgpath = application.currentproject.path + "/noimg.bmp"
stuimg.picture = imgpath
end sub
创建打印预览面板窗体
1. 创建“打印预览面板”,依次放置一个用于查询的文本框,并命名为“inputname”;两个命令按钮“预览”、“关闭”。
2. 依次点击菜单栏“视图→代码”命令,进入vba代码编写窗口,编写如下代码:
public stuname as string '定义全局变量stuname
sub printreports(printmode as integer)
' 创建打印预览子程序
dim strwherecategory as string
if stuname <> empty then
strwherecategory = "姓名= '" + stuname + "'"
end if
docmd.openreport "证书信息", printmode, , strwherecategory
docmd.close acform, "打印预览面板"
end sub
private sub inputname_change()
' 将文本框输入的字符赋给全局变量sname,用于给打印预览限定条件
stuname = inputname.text
end sub
private sub 预览_click()
' 预览报表,本过程使用自定义的 printreports 子程序
printreports acpreview
end sub
private sub 关闭_click()
' 关闭窗体
docmd.close
end sub
创建主切换面板窗体
1. 创建“主切换面板”,放置三个命令按钮“打印学生证书”、“返回数据窗口”、“退出管理系统”。
2. 依次点击菜单栏“视图→代码”命令,进入vba代码编写窗口,编写如下代码:
private sub 打印学生证书_click()
dim strformname as string
strformname="打印预览面板"
' 打开打印预览面板
docmd.openform strformname, , , , , acdialog
end sub
private sub 关闭当前窗口_click()
dim strdocname as string
strdocname = "证书信息"
' 关闭“主切换面板”窗体。
docmd.close
' 设置焦点到数据库窗口;选择“证书信息”表。
docmd.selectobject actable, strdocname, true
end sub
private sub 退出管理系统_click()
' 退出 microsoft access.
docmd.quit
end sub
设置启动时显示主切换面板
依次点击菜单栏“工具→启动”命令,打开“启动”设置窗口,在“显示窗体→页”选项下选择主切换面板,并取消“显示数据库窗口”,这样在下一次打开此access数据库时,就会自动显示主切换面板窗体。读者也可根据自己的需要决定是否取消菜单栏和快捷菜单栏,如果取消以后又要显示它们,可以在打开access数据库时按住shift键。
至此,技能证书打印系统开发完毕。本系统在windows 2000 server sp4、microsoft office access 2003下调试通过,感兴趣的读者可到作者的网站下载(http://www.cqie.net/opus/)。
注册会员,创建你的web开发资料库,
新闻热点
疑难解答