社区
PowerBuilder
帖子详情
怎样实现数据窗口的指定打印页数?
leonwan
2001-05-21 09:08:00
各位大虾:
如果下拉列表统计的数据量比较大,比如有几万条数据时。要实现对数据的指定打印,
该如何实现?
...全文
255
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并且会不会使用,在这里描述两种方式。 首先第一种是比较笨重的方式: 这种方式需要两个一样的
数据
窗口
dw_1和dw_2,然后是在
指定
打印
时,将
指定
打印
范围的
数据
从dw_1同步到dw_2里面,最后直接
打印
dw_2,此处代码不
实现
,可自行去研究
实现
。 第二中方式是使用dw的API
实现
: 该方式相对来说比较简单,但是如果
数据
窗口
是经过继承封装的,可能就不一定适用,不适用的情况下可以选择方式1来
实现
。 该方法只需要一个
打印
C#编程实践:Word文档
页数
获取与
打印
功能
实现
对于更高级的用户交互,我们可能需要创建一个独立的预览
窗口
,这不仅可以提高应用程序的响应速度,还可以为用户提供更丰富的交互方式。在设计自定义预览界面时,需要考虑以下要素:界面布局:确定预览区域和其他控制元素(如缩放控制、导航按钮等)的布局方式。交互逻辑:
实现
缩放、全屏、页面切换等功能的逻辑。响应性能:确保预览操作的响应时间和流畅性。
PB中
数据
窗口
的精确页面
打印
技术
window.google_render_a
pb
打印
选择
页数
_拿走不谢!解决 Excel 表格
打印
时遇到的所有麻烦
私信回复关键词【CSV】,下载 CSV 工具,帮你批量转换上百个 Excel 文件格式!
打印
是我们工作中非常常见的事。对于很多小伙伴来说,
打印
就是一件「放放纸张,点点
打印
机,没有什么技术含量」的事。但 Excel 表格的
打印
却并没有那么简单……今天教你的 5大法宝,能够解决你在 Excel 表格
打印
中的大部分问题!第一大法宝重复标题行我们在
打印
的时候,第 1 页一般是设置好标题和表头的:但是当
打印
...
pb
打印
选择
页数
_期末
打印
资料太费钱?这些技巧来拯救你
文/ 丢丢 首发于一周进步大家可能都有过期末考试
打印
题库的经历,
打印
的时候因为不熟悉Word
打印
的设置,导致白白浪费了很多纸张钱纸。之前我和很多同学一样,认为Word
打印
很简单,只需要点一下「
打印
」即可,实际上Word
打印
也有很多不容忽视的设置。本篇文章我总结了8种Word
打印
的小技巧,供同学们参考。01.
打印
预览如果你想
打印
前看一下文档的表格、段落、文字格式等
打印
效果,一定要进行「
打印
预览」,...
PowerBuilder
1,111
社区成员
66,454
社区内容
发帖
与我相关
我的任务
PowerBuilder
PowerBuilder 相关问题讨论
复制链接
扫一扫
分享
社区描述
PowerBuilder 相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章