社区
PowerBuilder
帖子详情
怎样实现数据窗口的指定打印页数?
leonwan
2001-05-21 09:08:00
各位大虾:
如果下拉列表统计的数据量比较大,比如有几万条数据时。要实现对数据的指定打印,
该如何实现?
...全文
236
8
打赏
收藏
怎样实现数据窗口的指定打印页数?
各位大虾: 如果下拉列表统计的数据量比较大,比如有几万条数据时。要实现对数据的指定打印, 该如何实现?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liulee
2001-05-27
打赏
举报
回复
呵呵,怎么尽给我啊...
Methodor
2001-05-26
打赏
举报
回复
太旧了吧~~
4、5年前有人看~~
现在。。。~~
leonwan
2001-05-26
打赏
举报
回复
大家来看看呀。
leonwan
2001-05-26
打赏
举报
回复
结案了。
leonwan
2001-05-25
打赏
举报
回复
现在给出方法,让那些可能碰到这问题的人们不要走弯路了。
//转载
PowerBuilder 中 数 据窗 口 的 精 确 页 面 打 印 技 术
中国计算机世界
国 永 杰 张 颖
---- 摘 要 本 文 详 细 介 绍 了PowerBuilder 中 数 据 窗 口 打 印 输 出 技 术, 并 给 出 了 一 个 通 用 的 数 据 窗 口 打 印 控 制 程 序。
---- 关 键 词 PowerBuilder DataWindow Print
1. 引 言
---- 自PowerBuild 4.0 问 世 以 来, 以 其 简 洁 高 效 的 集 成 开 发 环 境、 强 大 的 数 据 窗 口 技 术、( 几 乎) 无 所 不 能 的 数 据 库 访 问 能 力, 越 来 越 受 到 编 程 人 员 的 青 睐。 据Sybase 自 己 的 统 计, 目 前 全 球 有60 万 程 序 员 和 系 统 分 析 人 员 在 使 用 他 们 的Powerbuilder 和S-designer, 进 行 各 种 类 型 的 应 用 程 序 开 发。 最 新 发 布 的PowerBuilder 6.0 族 系 列 开 发 工 具, 直 接 支 持Active X 技 术、Server Push 技 术, 对 分 布 式 计 算 模 型 的 定 义 更 加 明 确, 实 现 更 为 简 便, 并 可 以 利 用 数 据 窗 口 直 接 生 成HTML 格 式 文 件, 等 等。 所 以,PowerBuilder 已 成 为C/S 模 式 应 用 和 基 于InterNet 模 式 应 用 的 主 要 开 发 工 具 之 一。
---- 数 据 窗 口(DataWindow) 是PowerBuilder 的 专 利, 也 是PowerBuilder 应 用 程 序 的 核 心 和 精 华 所 在.PowerBuilder 通 过 丰 富 的 属 性 和 函 数 来 控 制 数 据 窗 口 的 显 示 和 数 据 操 纵, 但 对 数 据 窗 口 的 打 印 支 持 似 乎 过 于 简 单, 只 有 一 个Print() 窗 口 函 数 和 一 个PrintDataWindow PowerScript 函 数, 并 且 这 两 个 函 数 的 功 能 几 乎 都 是 一 样, 都 只 简 单 地 将 选 定 数 据 窗 口 原 样 送 入 打 印 队 列, 本 身 不 具 备 页 面 控 制 功 能。 为 此 很 多 程 序 员 抱 怨 这 是PowerBuilder 的 一 个 缺 陷, 其 实,PowerBuilder 对 打 印 功 能 的 支 持 一 样 十 分 周 到 全 面, 只 不 过 应 用 场 合 不 同, 需 要 用 户 自 行 加 以 选 择。
---- 以 下 是 对PowerBuilder 打 印 控 制 功 能 的 详 尽 分 析, 并 介 绍 一 个 实 用 的 数 据 窗 口 页 面 控 制 程 序。
2. Powerbuilder 实 现 动 态 页 面 控 制 的 途 径
---- PowerBuilder 数 据 窗 口 有 一 对 函 数Describe 和Modify, 用 于 动 态 描 述 和 修 改 数 据 窗 口 结 构, 与 其 它 相 关 函 数 结 合 可 以 完 成 动 态 生 成 数 据 窗 口、 任 意 改 变 数 据 窗 口 显 示 方 式、 修 改 打 印 属 性 等。 这 两 个 函 数 是 控 制 与 修 改 数 据 窗 口 的 核 心 函 数, 其 使 用 方 法 如 下:
---- 1) Describe 获 取 数 据 窗 口 特 定 属 性 值
---- 语 法:dwcontrol.Describe ( propertylist)
---- 参 数:dwcontrol 数 据 窗 口( 或datastore) 控 件 名。
---- propertylist 用 字 符 串 表 示 的 数 据 窗 口 属 性。
---- 返 回 值: 返 回 一 个 表 示 属 性 的 字 符 串。
---- 数 据 窗 口 属 性 值 也 可 以 用dwcontrol.object.Datawindow.property 来 完 成 直 接 取 得。
---- 2) Modify 修 改 数 据 窗 口 特 定 属 性
---- 语 法:dwcontrol.Modify ( modstring )
---- 参 数:dwcontrol dwcontrol 数 据 窗 口( 或datastore) 控 件 名。
---- modstring 用 字 符 串 表 示 的 数 据 窗 口 属 性。
---- 返 回 值: 如 果 函 数 执 行 成 功 返 回“1”。
---- 与Describe 类 似, 修 改 数 据 窗 口 属 性 可 以 用:
---- dwcontrol.object.Datawindow.property = value 直 接 赋 值。
---- 3) 与 打 印 有 关 的 数 据 窗 口 属 性
---- 数 据 窗 口 属 性 中 与 打 印 有 关 的 有24 个, 其 中 实 现 打 印 页 面 控 制 的 几 个 属 性 是:
---- Copies: 打 印 份 数。
---- Filename: 如 果 不 为 空, 表 示 输 出 到 文 件 的 文 件 名。
---- Orientation : 打 印 方 向1= 横 向,2= 纵 向
---- Page.Range: 输 出 页 范 围, 要 打 印1,2, 和5 到10 页, 输 入: "1,2, 5-10"。 Page. RangeInclude: 本 次 打 印 范 围,0= 全 部,1= 偶 数 页,2= 奇 数 页。Paper.Size: 纸 张 大 小。
---- Scale: 打 印 比 例。
---- 程 序 中 利 用Modify 函 数 设 置 好 这 些 属 性 后, 即 可 实 现 动 态 修 改 数 据 窗 口 的 目 的, 再 调 用datawindow.print() 函 数, 完 成 最 后 的 打 印 输 出。
一 个 通 用Datawindow 打 印 控 制 程 序
---- 将 数 据 窗 口 中 的 报 表 在 打 印 机 上 输 出 是PowerBuilder 应 用 程 序 开 发 过 程 中 必 不 可 少 的 功 能, 作 为 例 子, 这 里 提 供 一 个 使 用 上 述 方 法 研 制 的 通 用 打 印 控 制 窗 口, 用 以 替 代Prompt 属 性 所 提 供 的Print 窗 口, 实 现 汉 化 界 面, 并 且 可 被 自 行 修 改 扩 充。 为 了 书 写 简 单, 程 序 中 采 用 直 接 赋 值 的 方 式 修 改 属 性。
实 例 变 量:
datawindow dw_print
string printername , name ,port
窗 口open 事 件 脚 本:
dw_print = Message.PowerObjectParm
printername = dw_print.Object.Datawindow.Printer
name = left(printername,pos(printername,"on") -1)
port = right(printername,len(printername) - pos(printername,"on")-1)
plb_printername.additem(name,1)
st_portname.text = port
“ 设 置” 按 钮clicked 事 件 脚 本
Integer code
Code = printSetup()
If code =1 then
printername = dw_print.Object.Datawindow.Printer
name = left(printername,pos(printername,"on") -1)
port = right(printername,len(printername) - pos(printername,"on")-1)
plb_printername.additem(name,1)
st_portname.text = port
end if
打 印 范 围 组 中“ 全 部” 选 择 钮clicked 事 件 脚 本
dw_print.object.DataWindow.Print.Range =''
sle_1.enabled = false
sle_2.enabled = false
sle_3.enabled = false
“ 页 数” 栏 后sle_2 单 行 文 本 编 辑 框Modified 事 件 脚 本
dw_print.object.DataWindow.Print.Page.Range = sle_1.text + "-" + sle_2.text
“ 自 定 义” 栏 后sle_3 单 行 文 本 编 辑 框Modified 事 件 脚 本
dw_print.object.DataWindow.Print.Page.Range = sle_3.text
打 印 份 数 组 中 份 数 单 行 文 本 编 辑 框Modified 事 件 脚 本
dw_print.Object.DataWindow.Print.Copies = integer(this.text)
“ 全 部” 选 择 钮Cliecked 事 件 脚 本
dw_print.Object.DataWindow.Print.Page.Rangeinclude =0
“ 奇 数” 选 择 钮Cliecked 事 件 脚 本
dw_print.Object.DataWindow.Print.Page.Rangeinclude =1
“ 偶 数” 选 择 钮Cliecked 事 件 脚 本
dw_print.Object.DataWindow.Print.Page.Rangeinclude =2
“ 确 认” 命 令 按 钮Clicked 事 件 脚 本
long job
if IsValid(dw_print) then
job = PrintOpen( )
PrintDataWindow(job, dw_print)
PrintClose(job)
close(parent)
end if
“ 取 消” 命 令 按 钮Clicked 事 件 脚 本
close(parent)
---- 窗 口 调 用 方 法: 在 其 它 带有 数 据 窗 口 的 窗 口 中, 使 用OpenWithParm(w_print_set,dwname) 即 可, 其 中w_print_set 为 本 窗 口 名,dwname 为 要 打印 的 数 据 窗 口。 该 程 序 是 一 个 通 用 打 印 控 制 程 序, 可 在 任 何 版 本 的PowerBuilder 应 用 中 使 用。
liulee
2001-05-25
打赏
举报
回复
呵呵,给自己加分吧.
leonwan
2001-05-25
打赏
举报
回复
解决了。
powered
2001-05-25
打赏
举报
回复
有用,很好!
打印
数据
窗口
指定
页或
指定
范围页的
数据
本文介绍了两种在
数据
窗口
中
实现
指定
打印
的方法。第一种方法涉及
数据
窗口
的复制与同步,适用于复杂场景;第二种方法利用
数据
窗口
的API设置
打印
页数
范围,简洁但可能不适用于封装后的
数据
窗口
。在
打印
按钮触发时,通过判断页码是否在
指定
范围内来控制
打印
。
C#编程实践:Word文档
页数
获取与
打印
功能
实现
本文深入探讨C#编程中处理Microsoft Word文档的常见需求,如获取文档
页数
、
实现
预览和
打印
功能。介绍了使用Word对象模型和COM互操作获取
页数
的方法,阐述了内嵌预览和独立
窗口
预览的
实现
,还讲解了
打印
选项设置、
打印
预览及Microsoft.Office.Interop.Word库的使用与维护。
PB中
数据
窗口
的精确页面
打印
技术
本文围绕PowerBuilder中
数据
窗口
的
打印
技术展开。指出其自带
打印
函数功能简单,缺乏页面控制。介绍了Describe和Modify函数用于动态控制
数据
窗口
结构,还列举了与
打印
有关的属性。最后给出一个通用Datawindow
打印
控制程序,可替代原Print
窗口
,适用于各版本PB应用。
pb
打印
选择
页数
_拿走不谢!解决 Excel 表格
打印
时遇到的所有麻烦
本文介绍五种Excel
打印
技巧,包括重复标题行、设置
打印
区域、分页预览、快速调整
打印
页数
及单色
打印
,帮助解决
打印
难题。
pb
打印
选择
页数
_期末
打印
资料太费钱?这些技巧来拯救你
本文总结了8种Word
打印
的小技巧,包括
打印
预览、
打印
选项设置、
指定
页面
打印
、批注
打印
、逆序
打印
、编辑正在
打印
的文档、逐份
打印
及多页内容
打印
在一张纸上。
PowerBuilder
1,110
社区成员
66,453
社区内容
发帖
与我相关
我的任务
PowerBuilder
PowerBuilder 相关问题讨论
复制链接
扫一扫
分享
社区描述
PowerBuilder 相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章