计算机二级VB知识技巧.pdf
《计算机二级VB知识技巧.pdf》由会员分享,可在线阅读,更多相关《计算机二级VB知识技巧.pdf(104页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2011年 计 算 机 二 级 考 试 VB常 见 错 误 和 难 点 分 析 1.标 点 符 号 错 误 在 VB中 只 允 许 使 用 西 文 标 点,任 何 中 文 标 点 符 号 在 程 序 编 译 时 产 生 无 效 字 符”错 误,并 在 该 行 以 红 色 字 显 示。用 户 在 进 入 VB后 不 要 使 用 中 文 标 点 符 号。中、西 文 状 态 下 标 点 号 对 照 见 下 表 所 示。中、西 状 态 下 标 点 符 号 对 照 西 文 状 态;-cmdOk等。对 初 学 者,由 于 程 序 较 简 单、控 件 对 象 使 用 较 少,还 是 用 默 认 的 控 件
2、名 较 方 便。当 程 序 中 的 对 象 名 写 错 时,系 统 显 示”要 求 对 象”的 信 息,并 对 出 错 的 语 句 以 黄 色 背 景。用 户 可 以 在 代 码 窗 口 的 对 象 列 表 框 检 查 该 窗 体 所 使 用 的 对 象。4.Name属 性 和 Caption属 性 混 淆 Name属 性 的 值 用 于 在 程 序 中 唯 一 地 标 识 该 控 件 对 象,在 窗 体 上 不 可 见;而 Caption属 性 的 值 是 在 窗 体 上 显 示 的 内 容。5.对 象 的 属 性 名、方 法 名 写 错 当 程 序 中 对 象 的 属 性 名、方 法 名
3、写 错 时,VB系 统 会 显 示“方 法 或 数 据 成 员 未 找 到 的 信 息。在 编 写 程 序 代 码 时,尽 量 使 用 自 动 列 出 成 员 功 能,即 当 用 户 在 输 入 控 件 对 象 名 和 句 点 后,系 统 自 动 列 出 该 控 件 对 象 在 运 行 模 式 下 可 用 的 属 性 和 方 法,用 户 按 空 格 键 或 双 击 鼠 标 即 可,这 样 既 可 减 少 输 入 也 可 防 止 此 类 错 误 出 现。6.变 量 名 写 错 用 Dim声 明 的 变 量 名,在 后 面 的 使 用 中 表 示 同 一 变 量 而 写 错 了 变 量 名,VB编
4、 译 时 就 认 为 是 两 个 不 同 的 变 量。例 如,下 面 程 序 段 求 100的 和,结 果 放 在 Sum变 量 中:Dim sum As Integer,i As IntegerS um=0For i=1 to 100Sum=Sun+iNext iPrint Sum显 示 的 结 果 为 100。原 因 是 累 加 和 表 达 式 Sum=Sun+i中 的 右 边 的 变 量 名 Sum写 成 Sun。VB对 变 量 声 明 有 两 种 方 式,可 以 用 变 量 声 明 语 句 显 式 声 明,也 可 以 用 隐 式 声 明,即 不 声 明 直 接 使 用。上 述 变 量
5、名 的 写 错,系 统 为 两 个 不 同 的 变 量 各 自 分 配 内 存 单 元,造 成 计 算 结 果 不 正 确。因 此,为 防 止 此 类 错 误 产 生,必 须 对 变 量 声 明 采 用 限 制 其 为 显 式 声 明 方 式,也 就 是 在 通 用 声 明 段 加 Option Explicit语 句。7.语 句 书 写 位 置 错 在 VB中,除 了 在“通 用 声 明 段 利 用 Dim等 对 变 量 声 明 语 句 外,其 他 任 何 语 句 都 应 在 事 件 过 程 中,否 则 运 行 时 会 显 示“无 效 外 部 过 程”的 信 息。若 要 对 模 块 级 变
6、量 进 行 初 始 化 工 作,则 一 般 放 在 Form Load()事 件 过 程 中。8.无 意 形 成 控 件 数 组 若 要 在 窗 体 上 创 建 多 个 命 令 按 钮,有 些 读 者 会 先 创 建 一 个 命 令 按 钮 控 件,然 后 利 用 对 该 控 件 进 行 复 制、粘 贴,这 时 系 统 显 示:已 经 有 一 个 控 件 为 Conunandl”。创 建 一 个 控 件 数 组 吗?的 信 息,若 单 击 是 按 钮,则 系 统 创 建 了 名 称 为 Command1的 控 件 数 组。若 要 对 该 控 件 的 Click事 件 过 程 编 程,系 统 显
7、 示 的 框 架 是:Private Sub Command 1 Click(Index As Integer)End SubIndex表 示 控 件 数 组 的 下 标。若 非 控 件 数 组,Click事 件 过 程 的 框 架 是:Private Sub Command1_Click()End Sub请 注 意 直 到 学 习 实 验 数 组 前,一 律 不 使 用 控 件 数 组。9.Print方 法 中 定 位 问 题 定 位 通 过 Tab、Spc函 数 和 最 后 的 逗 号、分 号 和 无 符 号 来 控 制。VB中 通 过 Print方 法 中 各 参 数 的 综 合 使 用
8、 达 到 所 需 的 结 果,但 初 学 者 往 往 难 以 掌 握。(1)Tab(n)与 Spc(n)的 区 别 Tab(n)从 最 左 第 1 列 开 始 算 起 定 位 于 第 n 歹 若 当 前 打 印 位 置 已 超 过 n 歹 则 定 位 于 下 一 行 的 第 n 歹 IJ,这 是 常 常 定 位 不 好 出 现 的 问 题。在 格 式 定 位 中,Tab用 得 最 多。Spc(n)从 前 一 打 印 位 置 起 空 n 个 空 格。例 如,下 面 程 序 段 显 示 了 Tab与 Spc的 区 别,效 果 如 图 所 示。Private Sub Command1_C1ick()
9、Print”1234567890”,Print Tab;*;Tab(2);%;spc(2);$End Sub(2)紧 凑 格 式;”分 号 的 使 用 紧 凑 格 式“;,即 输 出 项 之 间 无 间 隔。但 对 于 数 值 型,输 出 项 之 间 系 统 自 动 空 一 列,而 由 于 数 值 系 统 自 动 加 符 号 位,因 此,大 于 零 的 数 值,实 际 空 两 列。对 于 字 符 型 之 间 无 空 格。例 如,下 面 程 序 段,效 果 如 图 所 示。Private Sub Conunandl Cl ick()Print 1;-2;3Print1234;5678”P rin
10、 t End Sub从 该 例 应 区 分 数 值 和 字 符 在 紧 凑 格 式 输 出 的 差 异。1 0.打 开 工 程 时 找 不 到 对 应 的 文 件 一 般,一 个 再 简 单 的 应 用 程 序 也 应 由 一 个 工 程.vbp文 件 和 一 个 窗 体.frm文 件 组 成。工 程 文 件 记 录 该 工 程 内 的 所 有 文 件(窗 体.frm 文 件、标 准 模 块.b a s文 件、类 模 块.c i s文 件 等)的 名 称 和 所 存 放 在 磁 盘 上 的 路 径。若 在 上 机 结 束 后,把 文 件 复 制 到 U盘 上 保 存,但 又 少 复 制 了 某
11、 个 文 件,下 次 打 开 工 程 时 就 会 显 示 文 件 未 找 到“。也 有 在 VB环 境 外,利 用 Windows资 源 管 理 器 或 DOS命 令 将 窗 体 文 件 等 改 名,而 工 程 文 件 内 记 录 的 还 是 原 来 的 文 件 名,这 样 也 会 造 成 打 开 工 程 时 显 示 文 件 未 找 到。解 决 此 问 题 的 方 法:一 是 修 改.v b p工 程 文 件 中 的 有 关 文 件 名;二 是 通 过 工 程 菜 单 的“添 加 窗 体 中 的 现 存”选 项,将 改 名 后 的 窗 体 加 入 工 程。VB编 程 8 个 优 良 习 惯 良
12、 好 的 程 序 设 计 风 格 是 反 映 一 个 人 的 程 序 设 计 水 平 的 问 题,对 一 个 程 序 来 说,仅 仅 当 提 供 正 确 的 输 入 时 才 能 产 生 正 确 的 输 出 是 不 够 的。一 个 设 计 得 好 的 程 序 必 须 能 在 任 何 条 件 下,即 在 它 运 行 过 程 中 可 能 遇 到 的 各 种 情 况 下 都 能 正 确 地 操 作。应 当 把 计 算 机 程 序 设 计 得 能 够 重 复 运行 或 连 续 运 行;它 必 须 很“耐 用”,能 够 经 得 起 偶 然 的 或 故 意 的 错 误 使 用。1、&替 换+在 很 多 人
13、的 编 程 语 言 中,用 来 连 接 字 符 串,这 样 容 易 导 致 歧 义。良 好 的 习 惯 是 用 来 连 接 字 符 串.不 正 确:Dim sMessage As StringsMessage=+2 正 确:Dim sMessage As StringsMessage=1&注 意:&的 后 面 有 个 空 格 2、变 量 命 名 大 小 写,语 句 错 落 有 秩,源 代 码 维 护 方 面 下 面 大 家 比 较 一 下 以 下 两 段 代 码:读 懂 难 度 很 大 的 代 码:Dim SNAME As StringDim NTURN As IntegerIf NTURN=
14、0 ThenIf SNAME=vbeden ThenDo While NTURN 4NTURN=NTURN+1LoopEnd IfEnd If容 易 读 懂 的 代 码:Dim sName As StringDim nTurn As IntegerIf nTurn=0 ThenIf sName=vbeden ThenDo While nTurn 4nTurn=nTurn+1LoopEnd IfEnd If3、请 养 成 以 下 的“对 象 命 名 约 定”良 好 习 惯 推 荐 使 用 的 控 件 前 缀 控 件 类 型 前 缀 例 子 复 选 框 Check box chk chkReadO
15、nl y组 合 框 Combo box cbo cboEngl ish命 令 按 钮 Command button cmd cmdExit通 用 对 话 框 Common dialog dig dlgFileOpen目 录 列 表 框 Directory list box dir dirSource驱 动 器 列 表 框 Drive list box drv drvTarget文 件 列 表 框 File list box fil fiISource窗 体 Form frm frmEntry图 象 框 Image img imglcon标 签 Label Ibl IblHelpMessage列
16、 表 框 List box 1st IstPolicyCodes菜 单 Menu mnu mnuFileOpen单 选 按 钮 Option button opt optGender图 片 框 Picture box pic picVGA文 本 框 Text box txt txtLastName时 钟 控 件 Timer tmr tmrAlarm变 量 声 明 所 有 的 变 量 将 会 节 省 编 程 时 间,因 为 键 入 操 作 引 起 的 错 误 减 少 了(例 如,究 竟 是 aUserNameTmp,还 是 sUserNameTmp,还 是 sUserNameTemp)o 在“选
17、 项 对 话 框 的“编 辑 器”标 签 中,复 选“要 求 变 量 声 明”选 项。Option Explicit语 句 要 求 在 Visual Basic程 序 中 声 明 所 有 的 变 量。应 该 给 变 量 加 前 缀 来 指 明 它 们 的 数 据 类 型。而 且 前 缀 可 以 被 扩 展,用 来 指 明 变 量 范 围,特 别 是 对 大 型 程 序。用 下 列 前 缀 来 指 明 一 个 变 量 的 数 据 类 型。变 量 数 据 类 型 数 据 类 型 前 缀 例 子 String(字 符 串 类 型)str strFNameInteger(短 整 数 类 型)int i
18、ntQuantityLong(长 整 数 类 型)Ing IngDistanceSingle(单 精 度 浮 点 数 类 型)sng sngAverageDouble(双 精 度 浮 点 数 类 型)dbl dblToleranceBoolean(布 尔 类 型)bln blnFoundByte(字 节 类 型)byt bytRasterDataDate(日 期 类 型)dte dteNowCurrency(货 币 类 型)cur curRevenueObject(对 象 类 型)obj objCurrentVariant(变 体 类 型)vnt vntCheckSum4、在 简 单 的 选
19、择 条 件 情 况 下,使 用 H f()函 数 繁 琐 的 代 码:If nNum=0 ThensName=sancy ElsesName=Xu End If简 单 的 代 码:sName=H f(nNum=O,sancy”,Xu)5、尽 量 使 用 Debug.Print进 行 调 试 在 很 多 初 学 者 的 调 试 中,用 MsgBox来 跟 踪 变 量 值.其 实 用 Debug.Print不 仅 可 以 达 到 同 样 的 功 效,而 且 在 程 序 最 后 编 译 过 程 中,会 被 忽 略.而 MsgBox必 须 手 动 注 释 或 删 除.通 常:MsgBox nName应
20、 该:Debug.Print nName6、在 重 复 对 某 一 对 象 的 属 性 进 行 修 改 时,尽 量 使 用 With.End With通 常:Forml.Height=5000Forml.Width=6000Forml.Caption=This is My Labe应 该:With Forml.Height=5000.Width=6000.Caption=This is MyLabel”End With这 种 结 构 程 序 执 行 效 率 比 较 高,特 别 在 循 环 语 句 里。7、MsgBox中 尽 量 使 用 消 息 图 标,这 样 程 序 比 较 有 规 范 一 般
21、 来 说 vblnformation用 来 提 示 确 认 或 成 功 操 作 的 消 息 vbExclamation用 来 提 示 警 告 的 消 息 vbCritical用 来 提 示 危 机 情 况 的 消 息 vbQuestion用 来 提 示 询 问 的 消 息 8、在 可 能 的 情 况 下 使 用 枚 举 枚 举 的 格 式 为 Public|Private Enum namemembername=constantexpressionmembername=constantexpressionEnd EnumEnum语 句 包 含 下 面 部 分:部 分 描 述 Public可 选
22、 的。表 示 该 Enum类 型 在 整 个 工 程 中 都 是 可 见 的。Enum类 型 的 缺 省 情 况 是 PublicoPrivate可 选 的。表 示 该 Enum类 型 只 在 所 声 明 的 模 块 中 是 可 见 的。name必 需 的。该 Enum类 型 的 名 称。name必 须 是 一 个 合 法 的 Visual Basic标 识 符,在 定 义 该 Enum类 型 的 变 量 或 参 数 时 用 该 名 称 来 指 定 类 型。membername必 需 的。用 于 指 定 该 Enum类 型 的 组 成 元 素 名 称 的 合 法 Visual Basic标 识
23、 符。constantexpression可 选 的。元 素 的 值(为 Long类 型)。可 以 是 别 的 Enum类 型。如 果 没 有 指 定 constantexpression,则 所 赋 给 的 值 或 者 是 0(如 果 该 元 素 是 第 一 个 membername),或 者 比 其 直 接 前 驱 的 值 大 1。说 明 所 谓 枚 举 变 量,就 是 指 用 Enum类 型 定 义 的 变 量。变 量 和 参 数 都 可 以 定 义 为 Enum类 型。Enum类 型 中 的 元 素 被 初 始 化 为 Enum语 句 中 指 定 的 常 数 值。所 赋 给 的 值 可
24、 以 包 括 正 数 和 负 数,且 在 运 行 时 不 能 改 变。例 如:Enum SecurityLevel IllegalEntry=-1 SecurityLevell=0 SecurityLevel2=1End EnumEnum语 句 只 能 在 模 块 级 别 中 出 现。定 义 Enum类 型 后,就 可 以 用 它 来 定 义 变 量,参 数 或 返 回 该 类 型 的 过 程。不 能 用 模 块 名 来 限 定 Enum类 型。类 模 块 中 的 Public Enum类 型 并 不 是 该 类 的 成 员;只 不 过 它 们 也 被 写 入 到 类 型 库 中。在 标 准
25、模 块 中 定 义 的 Enum类 型 则 不 写 到 类 型 库 中。具 有 相 同 名 字 的 Public Enum类 型 不 能 既 在 标 准 模 块 中 定 义,又 在 类 模 块 中 定 义,因 为 它 们 共 享 相 同 的 命 名 空 间。若 不 同 的 类 型 库 中 有 两 个 Enum类 型 的 名 字 相 同,但 成 员 不 同,则 对 这 种 类 型 的 变 量 的 引 用,将 取 决 于 哪 一 个 类 型 库 具 有 更 高 的 引 用 优 先 级。不 能 在 With块 中 使 用 Enum类 型 作 为 目 标。Enum语 句 示 例 下 面 的 示 例 演
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 二级 VB 知识 技巧
限制150内