计算机世界日报
返回首页 产品报价 实用技巧 国产软件 技术天地 站点精选

计算机世界展览会日报

  综合要闻
  企业&人.com
  产品与技术
  网络与通信
  市场与渠道
  99全文检索

CCW网站

  网络世界
  微电脑世界
  IT经理世界
  CCW展览
  信息服务中心   家用电脑世界

兄弟刊物

  电子与信息化
  今日电子
  中国新闻科技
  电子知识产权
  电子产品世界

网上专递

  Linux园地
  友情链接
  冬涛谈法
Dongtao on Law

98内容总汇



实用技巧

隐 藏 数 据 窗 口 中 下 拉 数 据 窗 的 检 索 参 数

兰 州 铁 道 学 院
胡 法 红

---- [ 本 文 中 图 省 略, 需 要 者 可 下 载 全 文,Zip 14KB]

---- 面 向 对 象 的 开 发 工 具PowerBuilder 是 目 前 流 行 的 数 据 库 前 端 开 发 工 具 之 一, 特 别 是 它 的 数 据 窗 口, 用 它 可 以 很 方 便 地 对 数 据 库 进 行 操 作, 并 且 数 据 窗 口 对 象 又 以 其 灵 活 多 样 的 显 示 风 格 深 得 广 大 开 发 者 的 喜 爱。 有 时 候, 数 据 窗 口 对 象 中 的 某 些 列 的 取 值 必 须 满 足 一 定 的 条 件 且 来 自 于 另 一 个 数 据 源, 这 样, 我 们 就 要 使 用 下 拉 数 据 窗 口 风 格 的 数 据 窗 口 对 象, 并 且 在 下 拉 数 据 窗 口 中 设 置 检 索 参 数, 该 下 拉 数 据 窗 口 仅 显 示 满 足 条 件 的 数 据。 不 幸 的 是, 如 果 我 们 直 接 使 用 该 带 参 数 的 下 拉 数 据 窗 口, 在 我 们 使 用Insertrow()、Retrieve() 函 数 操 纵 数 据 窗 口 时, 系 统 会 自 动 检 索 下 拉 数 据 窗 口, 出 现"Specify Retrieval" 对 话 框, 怎 样 才 能 避 免 该 对 话 框 出 现 呢 ?

---- 为 了 避 免 出 现"Specify Retrieval" 对 话 框 的 出 现, 我 们 在 操 纵 主 数 据 窗 口 之 前 必 须 先 操 纵 下 拉 数 据 窗 口。 为 了 让 读 者 更 清 楚 具 体 操 作 过 程, 我 们 以 一 个 具 体 实 例 的 实 现 为 例 具 体 操 作。 本 例 子 的 数 据 来 自 于 两 个 表:bj 和student。 具 体 步 骤 如 下:

---- 一 . 创 建 窗 口w_test, 窗 口 上 的 控 件 有: 命 令 按 钮:cb_1( 插 入)、cb_2( 关 闭), 数 据 窗 口 控 件dw_1, 静 态 文 本st_1( 年 度), 单 行 编 辑 框sle_1。

---- 二 . 创 建 基 于 表student 的 数 据 窗 口 对 象d_student、 基 于 表bj 的 数 据 窗 口 对 象d_bj; 其 中 设 置d_bj 中 的 列"nd( 年 度)" 设 置 检 索 参 数, 参 数 名 为nd(string), 当 检 索 子 数 据 窗 时, 下 拉 数 据 窗 显 示 满 足nd=:nd 的 数 据; 而d_student 的 列class( 班 级) 为 下 拉 数 据 窗 风 格, 子 数 据 窗 为d_bj; 这 样, 当 单 击 " 插 入" 时, 数 据 窗 的" 班 级" 列 只 显 示 满 足 条 件"nd=sle_1.text" 的 班 级 名 称。

---- 三 . 在 窗 口"w_test" 中 声 明 事 例 变 量(Instance Variables):DatawindowChild child

---- 四 . 在 窗 口open 事 件 中 写 入 以 下 脚 本 程 序:sle_1.text=string(today(),"yyyy") dw_1.settransobject(sqlca)

---- 五 . 在 命 令 按 钮cb_1( 插 入) 的"clicked" 事 件 中 写 入 以 下 脚 本 程 序:

dw_1.getchild("class",child)
child.settransobject(sqlca)
child.retrieve(sle_1.text)
dw_1.settransobject(sqlca)
dw_1.insertrow(0)
---- 此 时, 光 标 停 于 单 行 编 辑 框sle_1 内, 在 该 编 辑 框 内 输 入 年 度 号( 如:1998) 然 后 单 击 命 令 按 钮cb_1( 插 入), 移 动 光 标 到 新 添 加 行 的" 班 级" 列, 单 击, 出 现 下 拉 数 据 窗 口( 如 图 二), 该 子 窗 口 出 现 的 数 据 就 为 满 足nd="1998" 的 班 级 名 称。

---- 从 上 面 的 实 例 操 作 可 知, 为 了 在 子 数 据 窗 口 中 仅 显 示 满 足 条 件 的 数 据, 就 必 须 为 子 数 据 窗 口 设 置 检 索 参 数, 单 为 了 在 操 纵 主 数 据 窗 口 时 出 现"Specify Retrival" 窗 口, 只 需 在 操 纵 主 数 据 窗 口 之 前 先 对 子 数 据 窗 口 操 纵, 这 样 就 可 以 达 到 我 们 的 要 求。

 
免 费 订 阅

实用技巧分类

Office应用
CAD
C、C++
数据库应用
Delphi
Internet应用
Java
Notes应用
操作系统应用
PowerBuilder
VB
Visual Foxpro
其他类
上周 排行榜
如 何 投 稿 ?

编者的话

在日常的工作生活中, 我们对计算机软硬件技术的应用开发肯定有许多的心得体会, 拿来和众人分享:让别人得到他们想要的,使自己找到苦苦寻觅的; 小的点点滴滴,大的工程系统,这里都需要。投稿 的关键在“技巧”二 字,知他人所不知,这样的稿件本栏最最欢迎! 大家公认的 好文章自然会有好的奖励。希望每个人 在这里都有所收获...

r2.gif (980 bytes)
  中国惠普
  3Com中国
  Motorola中国
  CA中国
  Cabletron
  Sony在中国
  西门子WinCC
  爱普生中国
  中国建设银行
  德州仪器(TI)
  问博医药


中国计算机世界出版服务公司版权所有