vb设计销售管理系统

2024-04-16

vb设计销售管理系统(精选6篇)

篇1:vb设计销售管理系统

用VB 设计条形码轻印刷系统 ---- 条 形 码 技 术 简 介 ---- 条 形 码 作 为 一 种 识 别 输 入 技 术, 由 于 其 显 而 易 见 的 快 速、 准 确、 低 廉 等 优 点, 被 广 泛 应 用 于 商 品 流 通、 图 书 馆 管 理 等 众 多 的 自 动 化 管 理 系 统 中,

用VB 设计条形码轻印刷系统

---- 条 形 码 技 术 简 介

---- 条 形 码 作 为 一 种 识 别 输 入 技 术, 由 于 其 显 而 易 见 的 快 速、 准 确、 低 廉 等 优 点, 被 广 泛 应 用 于 商 品 流 通、 图 书 馆 管 理 等 众 多 的 自 动 化 管 理 系 统 中。

---- 条 形 码 是 利 用 条( 着 色 部 份)、 空( 非 着 色 部 份) 及 其 宽、 窄 的 交 替 变 换 来 表 达 信 息。 每 一 种 编 码, 都 制 定 有 字 符 与 条 空、 宽 窄 表 达 的 对 应 关 系, 只 要 遵 循 这 一 标 准 打 印 出 来 的 条、 空 交 替 排 列 的“ 图 形 符 号”, 这 一“ 图 形 符 号” 中 就 包 含 了 字 符 信 息; 当 识 读 器 划 过 这 一“ 图 形 符 号” 时, 这 一 条、 空 交 替 排 列 的 信 息 通 过 光 线 反 射, 在 识 读 器 内, 这 种 光 信 号 被 转 换 成 数 字 信 号, 再 经 过 相 应 的 解 码 软 件, 就 能 将“ 图 形 符 号” 还 原 成 字 符 信 息。

---- 三 九 码 是 一 种 应 用 比 较 普 遍 的 条 形 码, 它 长 度 可 变、 可 校 验, 容 纳 的 字 符 多 达43 个( 包 括 数 字0~9、 字 母A~Z 及 其 它 七 个 特 殊 字 符)。 由 于 在 表 示 每 一 字 符 时, 使 用9 个 元 素, 其 中3 个 宽 元 素、6 个 窄 元 素, 故 名39 码, 这3 个 宽 元 素 中 必 须 有 两 个 是 条( 有 四 个 特 殊 用 途 的 字 符 除 外)。 如 字 母“J” 的 编 码 规 则 为:“N N N N W W W N N”, 其 中N 表 示 窄 元 素,W 表 示 宽 元 素, 奇 数 位 为 条 元 素, 偶 数 位 为 空 元 素, 宽 窄 元 素 的 宽 度 尺 寸 比 为2~3, 且 在 同 一 个 条 码 中 必 须 是 固 定 的。 在 打 印 制 作 条 形 码 时, 条 是 需 要 打 印( 着 色) 的, 而 空 元 素 内 不 必 打 印 的, 不 过 要 将 其 宽 度 计 算 在 内。 对 于 某 一 要 打 印 的 字 符 串, 按 其 先 后 顺 序 打 印, 串 前 串 后 各 加 一 个“*” 符 号 做 为 起 始 符 与 终 止 符, 相 邻 的 字 符 间 在 打 印 时 由“ 位 空” 分 隔,“ 位 空” 类 似 空 元 素, 即 不 着 色 部 分, 其 宽 度 应 小 于1.35mm, 为 编 程 方 便, 通 常 取 为 一 个 窄 元 素 的 宽 度。

---- 条 形 码 的 制 作 有 制 版 印 刷、 轻 印 刷 两 种 方 式, 轻 印 刷 是 指 使 用 普 通 打 印 机, 在 计 算 机 控 制 下 制 作 条 形 码。 这 种 制 作 方 法 灵 活, 成 本 较 低, 即 适 宜 于 同 一 号 码 的 单 条 制 作, 也 可 用 于 同 一 号 码 的 大 量 制 作, 这 一 特 点 是 制 版 印 刷 无 可 替 代 的。 使 用 计 算 机 软 件 打 印 条 形 码, 其 原 理 是 将 条 形 码 作 为 图 形 来 看 待, 用 编 程 语 言 中 的 绘 图 语 句- 画 矩 形 框, 在 相 应 的 坐 标 上 画 出 各 种 宽 度 不 同 的 条 元 素, 这 样 即 可 实 现 条 形 码 的 计 算 机 软 件 打 印。

---- VB 中 几 种 打 印 功 能 在 条 码 打 印 时 的 比 较

---- Visual Basic 是近年 来 比 较 流 行 的 编 程 语 言, 功 能 强 大, 易 学 易 用。Visual Basic 对 打 印 功 能 提 供 了 两 种 输 出 方 式: 一 是 首 先 将 条 码 输 出 到 某 一 对 象, 再 使 用 该 对 象 中Print 方 法, 将 其 输 出 到 打 印 机; 二 是 使 用 打 印 机 对 像Printer 绘 图。 下 面 对 这 种 方 法 做 个 比 较:

---- 一、 将 条 形 码 图 在 窗 体 上 绘 出, 再 使 用PrintForm. 方 法 打 印 窗 体。

窄 条 打 印:Line (x,y)-step(i,h),,bf

宽 条 打 印:Line (x,y)-step(3*i,h),,bf 或

Line (x,y)-step(2*i,h),,bf

---- 再 使 用formname.PrintForm. 将 条 形 码 输 出 到 打 印 机。

---- 在 这 种 方 式 下, 窗 体 的 量 度 单 位 可 以 有:twip, point, picel 三 种 其 中 以twip 为 单 位 为 最 小。

---- 以twip 为 单 位, 对 条 形 码 来 说, 打 印 精 度 可 达30, 即 当 窄 元 素 宽 度 必 须 等 于 或 大 于30 时, 打 印 出 来 的 条 形 码 可 以 阅 读, 若 窄 元 素 的 宽 度 小 于30, 条 形 码 中 相 邻 的 条 会 粘 连 在 一 起, 无 法 识 读。 当 窄 元 素 宽 度 为30 时,“J10059” 六 位 字 符 条 码 尺 寸 为:67mm。

---- 以Picel 为 单 位, 打 印 精 度 可 达2, 当 窄 元 素 宽 度 为2 时,“J10059” 六 位 字 符 条 形 码 尺 寸 为80 mm 以 上。

---- 以Point 为 单 位, 打 印 精 度 可 达2, 当 窄 元 素 宽 度 为2 时,J10059 六 位 字 符 条 形 码 尺 寸 为110MM。

---- 二、 直 接 使 用Printer.Line , 在 打 印 机 上 绘 画- 画 矩 形 框

窄 条 打 印:Printer.Line (x,y)-Step(i,h),,bf

宽 条 打 印:Printer.Line (x,y)-Step(3*i,h),,bf 或

Printer.Line (x,y)-Step(2*i,h),,bf

---- 用Printer.Line 打 印, 量 度 单 位 为 点, 最 小 精 度 为 达10, 当 窄 元 素 宽 为10 时,J10059 六 位 字 符 之 条 码 尺 寸 为:21MM。

---- 根 据 以 上 的 比 较, 使 用 第 二 种 方 法 打 印 输 入 的 条 形 码 精 度 最 高( 同 样 的 字 符 数, 尺 寸 最 短)。 很 显 然, 不 同 的 打 印 方 式, 分 别 有 不 同 的 适 用 范 围, 对 尺 寸 宽 度 要 求 不 高 的 情 况 下, 可 以 使 用 第 一 种 打 印 方 式, 若 对 条 形 码 尺 寸 要 求 较 严 格, 则 使 用 第 二 种 打 印 方 式 更 合 适。

---- 软 件 设 计

---- 一、 菜 单 设 计: 由 于 条 形 码 轻 印 刷 软 件 相 对 说 来 是 一 个 很 小 的 系 统, 需 要 选 择 的 项 目 不 多, 可 以 不 设 置 菜 单, 而 将 全 部 的 操 作 由 窗 体 控 件 来 完 成,

如 果 使 用 上 述 的 第 一 种 打 印 方 式, 则 必 须 建 立 另 一 窗 体, 用 于 第 一 步 的 输 出 条 形 码 图 形。

---- 二、 设 计 窗 体 控 件: 窗 体 中 的 控 件 包 括 两 大 类, 即: 参 数 设 置 框、 打 印 操 作 按 钮。 本 列 设 计 的 窗 体 见 图 示。 本 列 给 出 的 是 一 个 对 参 数 没 有 设 置 功 能 的 窗 体, 有 兴 趣 的 读 者 可 以 在 此 基 础 上 自 行 补 充 它。

---- 对 于 打 印 参 数, 对 条 形 码 的 打 印 来 说, 需 要 指 定 的 参 数 大 致 有: 条 码 宽 窄 比: 3:1~2:1; 条 码 高; 窄 元 素 宽 度; 打 印 机 类 型 及 端 口; 打 印 份 数; 打 印 纸 尺 寸 规 格; 每 行 条 形 码 数; 每 个 条 码 的 字 符 数; 是 否 自 动 增 值 打 印; 增 值 步 长; 每 一 页 行 计 数 起 止 数; 终 止 码 等。

---- 本 列 设 计 了 八 个 按 钮, 其 作 用 分 别 是:

---- Begin- 单 号 条 形 码 打 印 开 始

---- Auto- 自 动 增 值 打 印 开 始

---- Page- 将 打 印 机 内 存 中 的 条 码( 不 足 一 页) 打 印 出 来

---- Cancel- 中 止 自 动 增 值 打 印

---- Delete- 清 除 打 印 机 内 存 中 的 未 打 印 条 码

---- Help- 帮 助 信 息

---- About- 版 本 及 设 计 信 息

---- Exit- 关 闭 系 统

---- 三、 程 序 流 程:

---- 在 本 例 中, 条 形 码 的 打 印 分 为 单 号 打 印; 自 动 增 值 打 印 两 种。 单 号 打 印, 是 用 户 输 入 一 个 或 几 个 需 要 打 印 的 号 码 的 打 印 方 式; 而 自 动 增 值 打 印 是 用 户 指 定 起 始 号、 终 止 号 及 增 加 步 长, 由 机 器 自 动 生 成 被 打 印 号 码 来 打 印。 其 实 这 两 种 方 式 在 打 印 时 的 操 作 是 完 全 一 样 的, 不 同 之 处 在 于 被 打 号 码 的 获 取, 需 要 注 意 的 是 由 于39 码 字 符 集 中 包 括 字 符, 在 自 动 增 值 时 要 与 纯 数 字 码 区 别。

---- 下 面 以 单 号 打 印 为 例, 介 绍 条 形 码 打 印 的 程 序 流 程。

---- 1 . 检 查 各 项 参 数 设 置 是 否 完 全 正 确, 若 正 确, 则 继 续, 否 则 退 出;

---- 2 . 获 取 各 项 参 数 设 置;

---- 3 . 为X 坐 标 取 初 值( 纸 的 左 边 打 印 边 界);

---- 4 .( 循 环A) 是 否 打 印 完 一 行(I 条 条 码) ? 是 则 转14;

---- 5 . 本 条 条 码 是 否 为 空 ? 是 则 将 横 坐 标 加 上 一 条 条 码 之 宽 度;

---- 6 . 打 印 起 始 符;

---- 7 .( 循 环B) 是 否 打 印 完 本 条 条 码(J 个 字 符) ? 是 则 转10;

---- 8 . 打 印 一 个 字 符 的 条 码;

---- 9 .( 循 环B) 下 一 个 字 符;

---- 10 . 打 印 终 止 符;

---- 11 . 修 改X 坐 标;

---- 12 .( 循 环A) 下 一 条 条 码

---- 13 . 修 改Y 坐 标;

---- 14 . 打 印 本 行 每 一 条 码 的 人 工 识 别 字 符;

---- 15 . 本 页 是 否 已 打 满 ? 是 则 打 印, 并 对 新 页 坐 标 初 始 化;

---- 16. 退 出

---- 四、 程 序 代 码:

---- 用 于 检 查 参 数 设 置 正 确 性 的 程 序 主 要 从 各 项 参 数 间 的 关 系 去 检 查。 如 根 据 使 用 的 宽 度、 高 度、 每 行 条 码 数, 判 断 是 否 超 出 了 纸 的 打 印 范 围; 输 入 的 号 码 是 否 合 法 等。

---- 可 以 为 每 字 符 设 计 一 段 各 自 的 打 印 程 序, 这 种 方 式 编 程 简 单。 也 可 以 将 打 印 程 序 与 条 形 码 的 编 码 规 则 分 离, 通 过 参 数 传 递 某 一 字 符 的 编 码 规 则, 不 同 的 字 符 共 享 同 一 打 印 程 序。 本 列 采 用 前 一 种 方 式。 如 字 母“J” 的 编 码 规 则 为:“N N N N W W W N N”, 打 印 程 序 代 码 如 下:

Private Sub prn_J

Printer.Line (x, y)-Step(widt, high), , BF 注释:打印窄条

x = x + widt 注释:改变X坐标

x = x + widt 注释:打印窄空

Printer.Line (x, y)-Step(widt, high), , BF

x = x + widt

x = x + widt

Printer.Line (x, y)-Step(w_n * widt, high), , BF 注释:打印宽条

x = x + w_n * widt 注释:改变X坐标

x = x + w_n * widt 注释:打印宽空

Printer.Line (x, y)-Step(w_n * widt, high), , BF

x = x + w_n * widt

x = x + widt

Printer.Line (x, y)-Step(widt, high), , BF

x = x + widt

x = x + widt 注释:打印位空

End Sub

---- 其 中x,y 分 别 为 坐 标 值,w_n 为 宽 窄 元 素 宽 度 比, widt 为 窄 元 素 的 宽 度 值( 点), high 为 条 形 码 高 度, 每 打 印 一 个 条 元 素, 应 立 即 改 变X 坐 标, 以 便 打 印 下 一 个 元 素; 打 印 空 元 素 时, 由 于 是 不 着 色, 只 需 改 变X 坐 标 即 可; 每 一 个 字 符 打 印 结 束 时, 应 打 印 一 个 位 空( 本 列 中 位 空 宽 度 等 于 窄 空)。 其 它 的42 个 字 符 的 编 码 规 则, 读 者 可 以 在 有 关 条 形 码 技 术 的 文 献 中 查 到。

原文转自:www.ltesting.net

篇2:vb设计销售管理系统

一、设计思路 1.要达到的目的

培养学生综合利用VB语言进行程序设计的能力,主要是培养学生综合使用基本控件的、文件读写、数组操作和菜单设计等能力。

2.关键问题的解决 ①设置属性

设计时要注意一些功能需要在其它功能之后才能使用,如“平均工资”、“高于平均”等按钮需要在读入数据后才能使用,设计界面时需要将相应的按钮的Enable属性为false,在读入数据后才设置Enable属性为True。

②编写代码

需要对每一个窗体编写事件处理过程。最主要的工作包含在主窗体中,代码包括事件处理过程和必要的声明。变量声明部分声明本程序所需要的变量和数组,由于单击按钮时,都要对姓名、职称、工资进行操作,因此相应的数组和变量应定义为模块级的。在编写事件处理过程代码时注意以下几点:(1定义动态数组分别用于存放姓名、职称、工资数据。

(2单击“读取数据”按钮,利用通用对话框所提供的打开标准对话框来选择要打开的数据文件,并利

用文件的基本操作将该文件中的的数据依次读入到相应数组中。注意为保留动态数组中存放的内容,在使用ReDim语句中要加上Preserve关键字。

(3计算职工的平均工资,并存放在平均工资变量,此变量应定位模块级的。

(4利用InputBox 函数来输入要追加的学生的信息。(5利用InputBox 函数来输入要删除的职工的姓名。

利用MsgBox 函数或另一个窗体来显示高于及等于(或低于平均工资和分类汇总的结果。。

二、部分程序关键源代码及注释 Dim i As Integer, aver As Single Dim a(As String, b(As String, c(As String Private Sub Command1_Click(Dim str As String CommonDialog1.Filter = “txt(*.txt|*.txt|all file(*.*|*.*” CommonDialog1.FilterIndex = 1 On Error GoTo usercancle CommonDialog1.ShowOpen usercancle: Text1 = “姓名职称工资” fileno = FreeFile Open CommonDialog1.FileName For Input As #fileno i = 1 Do While Not EOF(fileno

ReDim Preserve a(i, b(i, c(i Input #fileno, a(i, b(i, c(i str = a(i & “ ” & b(i & “ ” & c(i Text1 = Text1 + vbNewLine + str i = i + 1 Loop Close #fileno i = i1 Print i aver = sum / i s1 = “职工的平均工资为:” & aver s2 = “职工总人数:” & i MsgBox s1 & vbCrLf & s2, , “zh1” Command3.Enabled = True Command4.Enabled = True End Sub Private Sub Command3_Click(Dim x As Integer, l1 As String, m1 As String Form2.Text1 = “姓名职称工资” Form2.Text1 = Form2.Text1 & vbNewLine & “--------------------------” x = 0 Print i For i = 1 To i If c(i >= aver Then x = x + 1

l1 = a(i & “ ” & b(i & “ ” & c(i Form2.Text1 = Form2.Text1 & vbNewLine & l1 End If Next i i = i1 Print i Form2.Text1 = Form2.Text1 & vbNewLine & “--------------------------” m2 = “工资小于平均工资的人数” & y Form2.Text1 = Form2.Text1 & vbNewLine & m2 Form2.Caption = “工资小于平均工资的人数” Load Form2 Form2.Show End Sub Private Sub Command5_Click(Dim n1 As Integer, n2 As Integer, n3 As Integer, n4 As Integer Dim str1 As String, str2 As String, str3 As String, str4 As String For i = 1 To i

If a(i = “教授” Then n1 = n1 + 1 ElseIf b(i = “副教授” Then n2 = n2 + 1 ElseIf c(i = “讲师” Then n3 = n3 + 1 Else n4 = n4 + 1 End If Next i i = i1 a(i = a(i + 1 b(i = b(i + 1 c(i = c(i + 1 Next i i = i1 Print i End Sub Private Sub manu1_Click(Dim m1 As Integer, m2 As Integer m1 = InputBox(“请输入工资下限” m2 = InputBox(“请输入工资上限” Form2.Text1 = “姓名职称工资” r = 1 For i = 1 To i If c(i >= m1 And c(i <= m2 Then r = r + 1 str5 = a(i & “ ” & b(i & “ ” & c(i Form2.Text1 = Form2.Text1 & vbCrLf & str5 End If Next i i = i1 For j = i + 1 To g If Val(c(i > Val(c(j Then t = c(i c(i = c(j c(j = t t = a(i a(i = a(j a(j = t t = b(i b(i = b(j

b(j = t End If Next j Next i i = i1 For j = i + 1 To g If Val(c(i < Val(c(j Then

t = c(i c(i = c(j c(j = t t = a(i a(i = a(j a(j = t t = b(i b(i = b(j b(j = t End If Next j Next i i = i-1 Form2.Text1 = “姓名职称工资” For i = 1 To i str7 = a(i & “ ” & b(i & “ ” & c(i Form2.Text1 = Form2.Text1 & vbNewLine & str7 Next i Form2.Caption = “降序排序” Load Form2

Form2.Show End Sub Private Sub manu5_Click(End End Sub

三、设计方案的完善及目前存在的问题 1.设计方案要完善的地方 ①对编程语言的进一步完善 ②对程序的调用 ③程序不够人性化 2.目前存在的问题 ①编程语言不够流畅。

四、本次设计的收获及心得体会

对VB理解不深刻,知识匮乏,但这是颇有实际用处的,认真学习vb,不断认识自己的不足,并不断改进。认真学习科学知识,在学习中充分实践。把运用与学习结合在一起。

五、对该题目和VB设计的意见和建议 1.对该题目的意见和建议 该程序应该充分与现实结合。

让程序更容易让顾客进行操作。更加人性化。

2.对本次设计的意见和建议

篇3:VB学生信息管理系统设计与实现

用数据库设计的6个阶段理论作为指导, 以学生信息管理系统为实例, 详述怎样将理论和实践结合起来, 提高学生的数据库开发能力。

1 数据库系统

数据库系统的规范设计方法分为6个阶段:需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库的实施阶段、数据库运行和维护。前4个阶段是设计数据库 (通常叫做后台) , 后2个阶段是设计应用系统 (通常叫做前台) , 一般称为管理信息系统 (MIS) , 数据库和应用系统就像河两岸, 要互通有无, 需要在两岸搭建一座桥梁, 这座桥就是前台和后台的连接, 通常有ODBC、OLEDB、JDBC等连接方式, 这时, 前台、“桥梁”、后台组成的系统就是一个完整的数据库系统。

学生信息管理系统是一个典型的数据库系统, 后台数据库就是全体学生信息, 前台应用系统就是用VB开发的MIS系统、“桥梁”用ODBC字符串连接方式搭建。

当然, 在进行数据库系统开发前, 要做一些基础工作, 首先搭建软硬件开发平台, 即进行电脑硬件配置, 小型系统开发对硬件的要求不是很高, 但是大型数据库系统对电脑的配置有较高的要求;软件配置包括安装操作系统, 尤其是开发网站最好安装网络操作系统;选择DBMS软件, 使用SQL Server2000;选择前台开发工具, 如用VB、ASP、.NET等技术开发时, 就得安装相应的开发软件, 安装VB6.0中文版。然而这时要注意, VB本身并不具备数据库编程能力, 所以必须调用底层控件对其扩充, 在VB“工程”菜单下选择“引用”子菜单, 在弹出的对话框中选择Microsoft ActiveX Data Object 2.6, 当然现在有更高版本也可选用, 这个控件就是说的ADO控件, 添加好后, 在VB中就可以进行应用系统的开发了。

2 数据库设计

2.1 需求分析

学生信息管理系统的管理对象是某所学校的全体学生, 学生看似是一个独立的个体, 但仔细考虑, 就会发现, 学生除了自身特有的一些静态属性外, 还有一些动态特征, 如学习、住宿、看书等, 这样一来, 学生就和课程、宿舍、图书这些个体发生了联系, 由于这种联系, 可能会产生一些结果, 如学生选完课后, 经过一学期的学习就会有成绩出现, 学生借完书后就会有结束日期、还书日期等现象出现, 由此可以说任何一个事物都有动、静之分, 任何一个事物都会和其他事物有联系。

只考虑学生的学号、姓名、性别、年龄、系别、照片这6个基本属性, 实现对学生基本信息的管理, 如新生进校后, 使用这个系统, 可以方便管理人员很快熟悉每位学生。设计了一个简易系统, 而如果要设计一个完整的系统, 原理是相似的。

2.2 概念结构

概念结构设计其实就是根据需求分析得出E-R图 (实体联系图) 如图2所示。

2.3 逻辑结构

逻辑结构设计是根据E-R图得到一种数据模型, 现有数据模型3种:层次模型、网状模型、关系模型, 而目前最常用的是关系模型, 所以将图2转换成关系模型, 而任一种模型都有3要素:数据结构、数据操纵、数据完整性约束。关系模型的数据结构就是二维表格, 数据操作支持查询和更新, 完整性约束有实体完整性约束、参照完整性约束、用户自定义的完整性约束。

将图2转换后得到数据结构student (学号、姓名、性别、年龄、系别、照片) , 当然还要设置每一个属性的数据类型;数据操作查询和更新通过应用系统设计实现;完整性约束学号为主码, 因为它能唯一标识每位学生;本模式中暂无外码, 所以没有参照完整性设计;用户自定义完整性可以通过DBMS进行控制, 也可以通过应用系统实现, 如性别的取值只能为‘男’或‘女’, 作为大学生, 年龄的限制可以设为16岁到25岁之间, 系别的取值仅限于这所学校开设的系, 照片的存储可能是初学者觉得难处理的地方, 是把照片本身存储到数据库呢, 还是把照片的路径存储到数据库, 选择后者, 另外, 照片的大小最好提前处理, 这样不会给前台开发带来麻烦, 提前将学生照片处理为高180像素、宽120像素的小照片。

2.4 物理结构

物理结构取决于所用的DBMS软件, SQL Server 2000一般以文件形式存储数据库。最后, 得到了学生信息管理系统的数据库stu_info, 库中只有一张表student。结构如表1所示。

3 数据库与应用系统的连接

VB中已经引用了ADO控件, 该控件有两个主要的对象:连接对象connection和记录集对象recordset, connection用于连接数据库, recordset用于存放查询结果。

使用一个通用模块实现连接, 减少代码的重复。程序如下:

这个函数每调用一次, 就会连接一次数据库, 同时返回一个由参数sqls语句执行后得到的记录集, 存放在函数名connsub中。

4 应用系统设计

4.1 主窗体

如图3所示, 在主窗体中, 用菜单实现查询、添加、删除、修改功能, 窗体上添加一个刷新数据的按钮、一个Datagrid控件, 该控件需要通过“工程”菜单“部件”子菜单进行添加, 用来显示数据库中的所有信息。该功能的实现有两处, 一是在窗体加载事件中, 另一处是在单击刷新按钮之后。关键代码如下:

4.2 查询窗体

查询窗体设计时, 要考虑根据什么查询, 根据学号查询, 必须先知道用户想查询几号学生, 因此查询分成两步:第一步, 先询问用户想查询谁;第二步, 显示查询结果。

4.2.1 查询询问窗体

如图4所示, 查询询问窗体要注意对用户输入的学号进行判断, 如果该学生存在, 就显示查询结果;如果不存在, 则进行友好提示, 请用户重新输入。查询按钮的单击事件代码如下:

4.2.2 查询结果显示窗体

如图5所示, 该窗体加载后就要显示上一个窗体查询的学生信息, 所以代码写在窗体的加载事件中, 用Image控件显示图片, 代码如下:

4.3 添加窗体

如图6所示, 添加学生信息窗体的设计中, 要尽可能让用户通过选择输入信息, 使输入变得快捷而准确, 所以性别的输入用两个单选按钮, 系别的输入用下拉列表, 而且窗体加载时就要存好数据库中已有的系别, 添加学生照片通过CommonDialog控件, 由用户随意选择学生照片, 并迅速显示在Image控件中。CommonDialog控件需通过“工程”菜单“部件”子菜单添加, 该控件运行时不可见, 所以添加一个按钮, 触发该控件。主要代码如下:

4.4 修改学生信息

修改学生信息的设计思路与查询学生信息的设计思路相似, 不再赘述。

4.4.1 修改询问窗体

如图7所示, 在本窗体中, 需要对用户输入的学号进行存在与否的判断, 如果存在, 显示修改窗体。

4.4.2 修改窗体

如图8所示, 修改窗体中, 在窗体加载事件中显示学生信息, 学号不能随意修改, 照片的修改需要再次使用CommonDialog控件, 主要代码如下:

4.5 删除学生信息

删除学生信息也需要考虑根据什么进行删除, 根据学号删除, 删除时要注意, 一定要在程序中给用户是否要删除的提示, 否则可能误删除, 造成数据丢失。另外, 对于有参照关系的数据库, 要考虑删除一张表的信息时, 是否同时要删除所参照的另一表中的信息, 这一点即可在SQL Server 2000中设计表的时候选择级联删除选项, 也可以在应用系统中编写代码实现, 否则会造成数据不一致, 例如, 张三学生已经从学生表中被删除了, 那么他在选课表中的选课记录也应该被删除。

删除窗体 (frm_delete_who.frm) 的代码如下:

5 结语

到此, 应用系统设计已经完成, 接着要进行维护等操作, 这意味着, 当应用系统开发好后, 日常使用和维护就变成了数据库系统最频繁的操作, 随着时间的流逝, 环境的变迁, 一个数据库系统也要随之变化, 从小的变动直到新一轮系统的开发, 数据库系统也是有寿命的。

摘要:以数据库设计的6个阶段为指导, 用SQL Server 2000管理数据库, VB开发一个简易的学生信息管理系统, 并讲解了VB开发中的一些技巧。

关键词:数据库系统设计,学生信息管理系统

参考文献

[1]萨师煊, 王珊.数据库系统概论.北京:高等教育出版社, 2006.

篇4:基于VB考试分析评价系统设计

关键词:考试系统;VB

中图分类号:TP311.1文献标识码:A文章编号:1007-9599 (2010) 03-0108-02

VB-baseclTest Analysis&Evaluation System Design

Ruxian Gulistan Hoxur

(Xinjiang Electrical College,Computer Technology Department, Urumqi 830011,China)

Abstract:With the popularization and development of computer technology in the education sector, a common, practical test engineering systems increasingly important role. The system for reducing test costs, stimulate student interest in learning, improve the efficiency of teachers. This article introduces examination system under the VisualBasic environment, by updating the item bank that the system can be used for multi-course of the paper examination. The system by updating the Questions bank can be used to test multiple courses of paperless.

Keywords: Test system; VB

一、系统概述

考试是各高校日常活动的重要部分。在考试系统中,包括试卷创建,题库管理,试卷评阅,平时成绩评定,学生考试,成绩查询,人员管理。下面介绍不同用户可使用的功能。

本系统的用户分为学生类用户、教师类用户和管理员类用户。

学生类的用户是指当前使用系统的学生,其用户名为学生的姓名,该类用户能够参与答题并浏览考试结果,但是不能浏览他人考试结果,也不能对自身和他人的信息进行管理。

教师类用户主要对试卷进行管理,包括创建试卷(选择题和上机题),评阅试卷(选择题系统自动评定,上机题由教师评定),评定平时成绩,试题管理(可以增加,删除,修改),还可以生成成绩单以及查询学生的成绩。

管理员类的用户,在实际中可以是班主任或者教务管理人员,他们有特定的权限对系统中的所有人员进行浏览、查找,并进行管理。本系统用户管理通过登录人员类进行管理。

二、系统初步调查

初步调查,在试卷分析中应该有的条件:学生人数、学生每题所得分数、试卷的总题数以及每题所对应的总分数、难度系数。在此基础上得出平均成绩、每一档次的人数。画出成绩分布矩形图。最后得出分析的结果。

因此在本系统中应该必须具有三大模块:

(一)名称维护:对教师,学生,班级,学院等进行入库及管理。包括有:学院名称、班级名称、课程名称、教师名称的添加、删除及修改等维护操作。

(二)试卷维护:对试卷进行考试记录添加、修改、删除、整张试卷的删除、以及对录入数据的核对等操作。包括有:

1.试卷输入:输入学院的名称、学年、学期、学生所在的年级及班级、课程名称、卷面每小题的满分数和整张试卷的满分数、总的考试人数、任课教师

2.试卷修改:对相关的资料及试卷进行修改

3.试卷删除:对所选中的学生成绩进行删除

4.成绩核对:对所选中的学生成绩进行相应的核对

(三)试卷分析:提供试卷的分析功能并给出分析报告,将屏幕输出的各种数据通过打印机

三、VB考试分析评价系统设计

(一)开发环境及开发工具概述

系统使用Visual Basic 6.0中文版来作为开发工具,后台数据库则采用Access 2000。

1.Microsoft Access2000简介

Microsoft Access2000是微软公司开发的基于Windows平台的小型数据库管理系统,是Office 2000 的组件之一。它承袭了旧版本Access的各项优点,又新增或完善了数据访问页、个性化菜单、internet/intranet、编程、安全保密等功能。

Access是一个面向对象的、采用事件驱动机制的小型关系数据库管理系统。在Access中,用户可以根据实际需要对数据进行分类,然后使用表对象分别存储每一种类型的数据,并建立起不同类型数据之间的关系,供报表使用。此时,每条信息仅在一处存放,减少了冗余数据的产生,节省了宝贵的存储空间,同时也加快了更新数据的速度。

在Access数据库中,任何有名字的事物都可以称之为对象。Access使用了与Windows 一致的风格,采取面向对象的方式,完成数据库的各种功能。极大地简化了用户的开发工作。

针对用户在实际应用中的需求,Access数据库提供了表、查询、窗体、报表、页、宏和模块等七个对象,用于收集、存储和操作各种不同的信息。

为了便于使用,Access的每个对象都为用户提供了设计器和生成向导。用户可以在设计器中设计生成对象,或对生成的对象进行编辑;用户也可通过生成向导方便快速的生成一个完备的对象。

2.Visual Basic集成开发环境在计算机上安装了Visual Basic,进入Visual Basic的集成开发环境。默认情况下,集成开发环境上面显示一个“新建工程”对话框,要求编程者选择要建立的程序类型。选择“标准EXE”即可,因为它是默认选项,所以只需单击“打开”按钮。Visual Basic使用“工程”来管理用来建立一个应用程序要使用的所有文件,所以每建立一个新程序,就要新建一个工程。每个工程都包含了一个以“.vbp”为扩展名的“工程文件”,这个文件用来管理这个工程中所有的文件。在“新建工程”对话框中使用“现存”和“最新”选项卡,可以打开磁盘上已有的或者最近编辑过的工程。如果在单击“新建工程”对话框上的“打开”按钮之前选定了对话框左下角的“不再显示这个对话框”复选框,则在以后启动Visual Basic时就不会显示这个对话框了

单击“新建工程”对话框上的“打开”按钮,对话框关闭,Visual Basic会创建一个编程者所选择类型的工程。如果单击的是“新建工程”对话框上的“取消”按钮,则Visual Basic的集成环境中不打开任何工程。

关闭了“新建工程”对话框之后,Visual Basic的集成开发环境全貌就显示在屏幕上了。Visual Basic开发环境是典型的Windows多文档界面(MDI, Multiple Documents Interface)。它的程序窗口有菜单栏和“标准”工具栏,其中有几个菜单项和按钮是在其他Microsoft软件中常见的(如“剪切”、“复制”、“粘贴”、“打开”、“保存”等),在这里功能相似。

Visual Basic菜单系统比较庞大,在本考试系统的开发中,仅仅用到一部分知识。

(三)窗体代码设计

系统自动创建试卷,主要是调用QuestionPaper类的Create方法来创建试卷。教师创建试卷方式则是通过试卷修改窗体来创建试卷。

当窗体加载时,初始化Updown控件的值的范围,代码如下。

Private Sub Form_Load()

DataEnv.rsSingleSelQ.Open

udSingleSel.Min = 0

udSingleSel.Max = DataEnv.rsSingleSelQ.RecordCount

DataEnv.rsSingleSelQ.Close

End Sub

如果用户单击“取消”按钮,则退出该窗体而放弃生成试卷,如果用户单击“确定”按钮,那么系统根据用户选择的出题方式作出不同的处理。

(四)修改试卷窗体(frmModifyPaper)

如果教师类用户创建试卷后单击了“修改试卷”菜单项,都将弹出试卷修改窗体。在该窗体中,允许教师向己有的试卷中加入题目或从试卷中删去题目。

窗体界面设计。向项目中添加一个窗体,命名为frmModifyPoper.frm。由前面演示过程可以知道,试卷修改窗体界面主要分为4个部分,包括题库显示区域、试题选择区域、试卷显示区域。其中题库显示区域、试题选择区域和试卷选择区域位于同一个Frame控件中。

篇5:vb设计销售管理系统

讨论了利用VB完成企业客户资料管理系统的设计与开发,包括建立数据库文件、相应的人机界面等功能设计,使企业客户资料共享,从而提高和发展企业管理功能.

作 者:李玮 沈勇 刘云红 LI Wei SHEN Yong LIU Yun-hong 作者单位:李玮,刘云红,LI Wei,LIU Yun-hong(西南林学院,交通机械与土木工程学院,云南,昆明,650224)

沈勇,SHEN Yong(云南民族大学,物理与电子电气信息工程学院,云南,昆明,650031)

篇6:vb设计销售管理系统

摘 要

二十一世纪是信息时代,计算机技术蓬勃发展,信息技术已成为本世纪的支柱产业。特别是Internet技术的高速发展,使得当今社会信息量剧增,这样一来我们就可以方便的获得世界各地的有用信息。但与此同时,有效的组织和存储这大量的信息以提供方便的查询,却是一件需要解决的事情。数据库的概念和技术正是我们对大量信息进行合理组织、存储和管理事物的解决之道。

随着各种不同应用领域对数据库管理的进一步需求,数据库技术的重要性越来越为人们所熟知。目前,不仅在大、中、小、微等各种机型上都配有数据库管理系统,各行业的信息系统,以及Internet上的信息系统也大都离不开数据库的支持,因此数据库已成为信息社会的重要基础设施。

本设计开发了一个用于学校内部管理学生信息的管理系统,它的出现使得学校可以对学生信息进行规范的管理、科学的统计和快速的查询和修改,从而减少学生信息管理方面的工作量。设计在安全保密方面,通过用户登录权限和密码的设置来初步实现,但安全性还是不高,有待于以后加强。在界面部分为使系统有很高的可操作性,界面设计时充分考虑管理人员的习惯,使得操作简单便易,数据录入迅速、规范、可靠;统计准确,制表灵活,适应力强,容易扩充,具有易用性、灵活性、开放性与可视性等。设计以Visual Basic 6.0为主要开发平台进行系统的开发,结合Microsoft SQL 2000的数据库管理系统完成数据库设计以及管理。

关键词:数据库, Visual Basic 6.0, Microsoft SQL sever 2000

目 录

第1章 绪论 ·················································································································· 1

1.1 发展现状与趋势 ···································································································· 1 1.2 现有系统分析 ········································································································ 2 1.3 可行性分析 ············································································································ 2 1.4开发工具简介 ········································································································· 3 1.4.1 Visual Basic 6.0 简介 ·············································································· 3 1.4.2 Microsoft SQL 2000 简介 ·········································································· 3 第2章 系统分析 ········································································································· 5

2.1系统主要任务与要求 ························································································· 5 2.1系统数据分析 ····································································································· 7 第3章 数据库设计 ···································································································· 8 3.1 数据库设置 ····································································································· 9 3.2 概念结构E-R图设计 ··················································································· 10 3.3 逻辑结构设计 ································································································ 11 第4章 系统详细设计与实现 ················································································ 11 4.1 方法概要 ··········································································································· 12 4.1.1 模块化设计 ······························································································· 12 4.1.2 对话设计 ··································································································· 12 4.2 安全保密设计 ··································································································· 14 4.3 模块简介 ··········································································································· 14 4.4 窗体设计 ··········································································································· 15 4.4.1 系统用户管理模块的创建 ······································································· 16 4.4.2 学籍管理模块的创建 ··············································································· 18 4.4.3 成绩管理模块的创建 ··············································································· 21 4.4.4 档案管理模块的创建 ··············································································· 26 4.4.5 就业管理模块的创建 ··············································································· 28 4.5 子系统整合 ······································································································· 30 4.6 帮助模块设计 ··································································································· 30 4.7 系统的编译 ······································································································· 34 4.8 程序运行的环境 ······························································································· 36 结 论 ··········································································································· 37 参考文献 ····································································································· 40 致 谢 ··········································································································· 41 附 录 ··········································································································· 42

图3.5系统主界面

图3.6系统登录界面

图3.7添加学籍模块

图3.8添加班级信息窗体

图3.9添加成绩信息

图3.10查询成绩模块

3.11修改班级信息窗体

图3.12学生信息添加窗体

图3.13学生信息修改

图3.14学生信息添加

图3.15毕业生信息

图3.17毕业生信息修改

图3.18毕业生信息查询

图3.19毕业生信息删除

图3.21导入备份模块

图3.24系统登录

上一篇:公共机构节能工作总结和工作思路下一篇:虾和蟹一教案