- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
窗口的精确页面打印技术
1?引言
自PowerBuild4. 0问世以來,以其简洁高效的集成开发环境、强大的数据窗口 技术、(几乎)无所不能的数据库访问能力,越來越受到编程人员的青睐。据 Sybase自己的统计,目前全球Y0U60万程序员和系统分析人员在使用他们的 Powerbuilder和S-designer,进彳亍各种类型的应 用程序开发。最新发布的 PowerBuilder6. 0族系列开发工具,直接支持ActiveX技术、ServerPush技术, 对分布式计算模型的定义更加明确,实现更为简便,并可以利用数据窗口直接 生成HTML格式文件,等等。所以,PowerBuilder已成为C/S模式应用和基于 InterNet模式应用的主要开发工具之一。
数据窗口 (DataWindow)是PowerBu订der的专利,也是PowerBuilder应用程序 的核心和精华所在.PowerBuilder通过丰富的属性和函数来控制数据窗口的显 示和数据操纵,但对数据窗口的打印支持似乎过于简单,只YOU 一个Print 0窗 口函数和一个PrintDataWindowPowerScript函数,并且这两个函数的功能几乎 都是一样,都只简单地将选定数据窗口原样送入打印队列,本身不具备页面控 制功能。为此很多程序员抱怨这是PowerBu订der的一个缺陷,其实, PowerBuilder对打印功能的支持一样十分周到全面,只 不过应用场合不同,需 要用户自行加以选择。
以卜是对PowerBuilder打印控制功能的详尽分析,并介绍一个实用的数据 窗口页而控制程序。
2. Powerbuilder实现动态页面控制的途径
PowerBuilder数据窗口 YOU 一对函数Describe和Modify,用丁动态描述和 修改数据窗口结构,与其它相关函数结合可以完成动态生成数据窗口、任意改变 数据窗口显示方式、修改打印屈性等。这两个函数是控制与修改数据窗口的核心 函数,其使用方法如下:
Describe获取数据窗口特定属性值
语法:dweontrol. Describe (property 1 ist)
参数:dwcontrol数据窗口 (或datastorc)控 件名。
propertyl ist用字符串表示的数据窗口屈性。
返回值:返回一个表示属性的字符串。
数据窗口屈性值也可以用dwcontrol. object. Datawindow. property来完成 直接取得。
Mod ify修改数据窗口特定属性
语法:dwcontrol. Modi fy (modstri ng)
参数:dwcontroldwcontrol 数据窗口 (或 datastorc)控 件名。
mod string用字符串表示的数据窗口属性。
返冋值:如果函数执行成功返冋“1”。
与Describe类似,修改数据窗口属性可以用:
dwcontro 1. object? Deitawindow. property=value 「直 接丿摭值。
与打卬YOU关的数据窗I I屈性
数据窗口屈性屮与打印YOU关的Y0U24个,其屮实现打印页而控制的几个屈 性是:
Copies:打印份数。
Filename:如果不为空,表示输出到文件的文件名。
Orientation:打印方向1二横向,2二纵 向
Page. Range:输岀页范围,要打印1,2,和5到10页,输入:1,2, 5-10o Page. Rangelnclude:本 次打印范围,0二全部,1=偶数页,2=奇数页。 Paper. Size:纸张大小。
Scale:打印比例。
程序中利用Modify函数设置好这些屈性后,即可实现动态修改数据窗口的 目的,再调用datawindow. print()函数,完成最后的打印输岀。
一个通用Datawindow打卬控制程序
将数据窗口屮的报表在打印机上输出是PowerBu订der应用程序开发过程 屮必不可少的功能,作为例子,这里提供一个使用上述方法研制的通用打印控 制 窗口,用以替代Prompt属性所提供的Print窗口,实现汉化界面,并且可被自 行修改扩充。为了书写简单,程序中采用直接赋值的方式修改屈性。
实例变最: datawindowdw_print
stringprintername, name, port
窗口 open事件脚本:
dw_print=Mcssagc. PowcrObjcctParm
printername=dw_print. Object? Datawindow. Printer name=left(printername, pos(printername, 〃orT)-l) port二right(printername, len(printerna
文档评论(0)