- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PowerBuilder的精确套打技术研究
摘??? 要:针对固定表格进行套打时数据难以实现精确定位的这一实际情况,提出了利用动态数据窗口技术实现的一种解决方案,并详细地介绍了具体实现步骤。
关键词:PowerBuilder;套打;动态数据窗口
在进行MIS设计时,具体到对固定表格进行套打的设计中,由于固定表格在印刷,设计过程中,常常会出现以下问题:(1)表格的整体位置发生偏移。(2)表格的内容保持不变,但由于具体需要,对其中的某些数据的位置进行了调整。由此,会造成了打印时数据产生错位、偏移等现象。使得打印的整体效果不甚美观,大大的影响了整个程序的性能。这一点上,在车票、学员证件等打印过程中体现地尤为明显。若每次进行调整后,均需修改源程序,并重新进行编译,这显然会给使用者的工作中带来许多不必要的麻烦。同样的,对于开发者来说,这并不是功能完善的软件系统。所幸的是PowerBuilder中提供了强大的动态数据窗口技术,用户可以通过创建数据窗口对象,动态地生成数据窗口,并且在应用程序运行的时候,再将其和一个数据窗口控件进行关联。用户也可以在程序运行过程中,通过程序脚本获取或重新设置数据窗口对象中所有实体的属性。例如,我们可以在程序运行过程中修改DataWindow中任何对象,比如列、计算域、图表等的高度、宽度、所在位置等属性值,或者重新定义数据源来实现特殊查询。实现固定表格精确套打的关键在于两点:其一:表格内数据(即数据窗口中的对象,主要是列或计算域)的移动。其二:数据窗口对象打印格式的保存及恢复。根据动态数据窗口的技术特点,我们可以在程序中动态地实现固定表格中精确定位打印。PowerBuilder中实现精确套打主要涉及到以下几个函数:1)????? Dwcontrol.Describe ( propertylist )????? 获取数据窗口对象或数据窗口对象中某一元素的当前属性值。同样的,也可以使用圆点操作符来获取。数据窗口中列的横坐标的获取DW Control Name.Describe(Columnname.X)DW Control Name.Object.Columnname.X2)????? Dwcontrol.Modify ( modstring )用户可以在modstring中使用下列三种语句类型来修改Datawindow对象。1:Create object - 在数据窗口对象中增加对象,比如列、绘图对象和计算域等。2:Destroy object - 从数据窗口中删除对象。3:Property assignments - 动态设置数据窗口对象或数据窗口对象中某一元素的属性值。比如背景、颜色、字体大小等。同样的,也可以使用圆点操作符来进行设置。设置数据窗口中列的横坐标DW Control Name.Modify(Columnname.X=an integer)DW Control Name.Object.Columnname.X=an integer3)????? LibraryExport ( libraryname, objectname, objecttype )通过调用LibraryExport函数,可以卸出一个窗口对象的源代码,把它存储在一个字符串变量中,然后在Create函数中利用此源代码(或做了某些改变的源代码)创建一个数据窗口对象。String ls_dwsyn, ls_errorsls_dwsyn = LibraryExport(c:\pb\dwTemp.pbl, d_emp, ExportDataWindow!)
4)????? Dwcontrol.Create ( syntax {, errorbuffer } )利用数据窗口源代码创建数据窗口对象,并将之与数据窗口控件相关联。在调用Create( )时,函数的Syntax参数可以通过以下三种方法进行定义:(1)调用SyntaxFromsql函数 (2)调用LibraryExport函数 (3)用户可以自己创建Sy ntax。dw_1.Create(ls_dwsyn, ls_errors)dw_1.Settransobject(sqlca)dw_1.Retrieve( )
5)????? LibraryImport ( libraryname, objectname, objecttype, syntax, errors {, comments } )将当前的数据窗口对象导入到PBL库中。用以保存当前数据窗口设置。string dwsyntax, ErrorBufferinteger rtncodedwsyntax = dw_1.Describe(DataWindow.Syntax)rt
您可能关注的文档
最近下载
- 基于51单片机的智能台灯设计.doc
- 幼儿园课件:小老鼠和泡泡糖最终.pptx
- 2024必威体育精装版国开《个人理财》形考题库.docx VIP
- 国家开放大学学前教育专业+毕业作业(幼儿园教学活动设计与指导)9.doc
- 第18课 从九一八事变到西安事变(课件).pptx VIP
- 酒店装配式装修技术规程.pdf VIP
- 2023年中国汉字听写大赛全部试题库及答案.pdf VIP
- 2024中国铁路成都局集团限公司招聘高校毕业生998人高频考题难、易错点模拟试题(共500题)附带答案详解.docx
- 人文英语3--An-absence-excuse-letter完整版.docx
- 神经工程学(天津大学)大学MOOC慕课 客观题答案.docx
文档评论(0)