转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件使用 >> 常用软件 >> 正文
PowerBuilder应用开发系列讲座(6)         

PowerBuilder应用开发系列讲座(6)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:739 更新时间:2009/4/24 21:43:37
p> DataWindow的打印输出(续)

打印控制函数

  PowerBuilder提供了一组打印控制函数来控制要交给打印机打印的对象。第一个函数PrintOpen()在这章的前面我们已介绍过了,其它还有:

PrintCancel(print_job_number)

这个函数将中止打印作业号所打印的作业,不发送任何内容给打印机。

datawindowcontrol.PrintCancel()

这个函数与上一函数的区别是:这个函数取消的是用Datawindowcontrol.Print()提交的作业。

PrintClose(print_job_number)

  这个函数将关闭指定的打印作业并且把它发给打印机(或者假脱机程序)。为了避免挂起打印作业,所有打开的打印作业都应在应用的结束前被关闭或取消。

PrintDefineFont(print_job_number,fontnumber,facename,height,weight,font-pitc h,fontfamily ,italic,underline)

  你可以用这个函数定义字型。Power-Builder允许在一个打印作业中使用八种字型,用这个函数可定义其中的任一个。这个字型所属的打印作业号由Print_job_number参数指定,font_number参数是这个打印作业所采用的字型号(1-8)。其余的参数描述了字型如何显示,是否斜体字、粗体和下划线等。facename参数是一个包含了你所定义的字体名字的字符串(例:courier 100CPI)。height参数是你所需的以千分之一寸为单位的字体的高度(例:250将是一个18点阵courier 10 CPI字体),height参数也可使用一负值来表示点阵数指定点尺寸(例:-18是18点阵)。weight参数值是您所要的字型的笔画权值(例:400是平常正文,700是粗体)。fontpitch参数是一个枚举数据类型,它指定了字体的间距(Defa ult!,Fixed!或variable!);fontfamily参数也是一个枚举类型,指定了字体系列(AnyFont!,Decorative!,Mod-ern!,Rom an!,Script!,Swiss!)。这两种参数只在基于Windows的操作系统中使用,在Macintosh等机器中不能使用。italic参数是一个布尔型变量,指定字体是斜体(True)或非斜体(False),underline参数也是一个布尔值,用法同上。

   PrintOpen()这个函数已在这章的开始讲述过了,它定义一个打印作业以便将所有的打印项成组发送给打印机。它的返回值是唯一的打印作业ID,如果返回值为负,则意味着产生错误。

PrintPage(print_job_number)

  这个函数将指定的打印作业的当前页传送给打印机(或假脱机程序) 另起一页用于之后的打印集。

PrintSend(print_job_number,string{,zero_character})

  这个函数在打印作业中发送一个特定的字符串给打印机。这个字符串一般是一个包含转义字符的命令串用来启动或操作打印机。这些打印机的控制代码因打印机的不同而不同,您应查询您的打印机手册来得到正确的代码。 这个与打印机进行通信的字符串应是一个ASCII码集,并以ASCII码0来结束。如果你需要发送ASCII码0,你可以用另外的一个字符来替代0,给定的这个替代字符的ASCII值由可选参数zero-character来指定。这个函数一般用于改变纸的定向(Lands cape或por-trait)或者改变打印用的纸盘等。

PrintSetFont(print_job_number,fontnumber)

  这个函数设置当前打印机字体,它是你使用PrintDefineFont()函数中定义的八个字体中的一个。

PrintSetSpacing(print_job_number,spacing)

  这个函数使用Spacing参数来决定正文行之间的行距。这个值乘以当前字体高得到行距,缺省值是1.2。

PrintSetup()

  这个函数调用Windows的Print Setup对话框,实际显示的Setup窗口依赖于你所安装的打印机驱动程序。

PrintWidth(print_job_number,string)

  这个函数的sting参数返回字符串的宽度(以千分之一寸为单位)。返回值的大小是依赖于当前选择的字体。

PrintX(print_job_number)

这个函数返回当前打印光标的X坐标(水平)值。

PrintY(print_job_number)

  这个函数返回当前打印光标的Y坐标(垂直)值。除非特别说明,上述函数的返回值1意味着成功,-1意味着失败。 DataWindow控件的打印属性使用modify函数,我们可以改变DataWindow的打印属性。在打印DataW-indow之前,我们可
以调用如图所示的窗口,从而得到我们想让用户设置的参数。这个窗口在PowerBuilder Enterprise的实例库中,您也可以在直接调用它前对其显示界面进行汉化和作适当修改。

  例如,我们使用下面语句来改变我们想打印的份数。
  dw_data..Modify("DataWindow.Print.Copies=3")
  你可以使用PowerBuilder Enterprise打包软件DWSYN40.EXE----DataWindow语法生成器来建立Modify语句。
下面所列的可以修改的参数全部以DataWindow.print为前缀,后接这个属性。
Collate=Yes or No(缺省为no,不作校对)
这个属性用来指示是否要对打印进行校对。校对通常较慢,因为整个打印过程必须反复几
次以得到一个校对后的结果。
Color=1(彩色)or 2(单色)
这个属性指示传送给打印输出的是彩色(如果你有一台彩色打印机)还是单色。
Columns=<an integer>(缺省为1)
这个属性用来指示DataWindow以报纸风格打印在一页上的栏的数量。
Columns.Width=<an integer>
这个属性指示以报纸风格打印的栏的宽度(基于为DataWindow指定的单位)。
Copies=<an integer>
这个属性指示你所需的打印的数量。
DocumentName=<a string>
这个属性可以让你为文件设置一个名字。这个名字在DataWindow传送给打印机时在打印序列中出现。
Duplex=1(单一)or 2(水平)or 3(垂直)
这个属性指示打印输出的方向。
Filename=<filename string>
这个属性仅当把DataWindow输出为一个文件时才有用。这个属性包含的字符串是将在磁盘中存储的文件的名字。
Margin.Bottom=<an integer>
这个属性为一整型指示页面下部空白的宽度(用DataWindow指定的单位)
Margin.Left=<an integer>
功能与Margin.Botton相同,但指示的是左侧空白宽度。
Margin.Right=<an integer>
功能与Mangin.Bottom相同,但指示的是右侧空白宽度。
Margin.Top=<an integer>
功能与Mangin.Bottom相同,但指示的是顶端空白宽度。
  Orientation=0(打印机的缺省设置)或2(横向打印)或3(纵向打印)这个属性用来指示打印定向。你可以使用打印机缺省设置,或者设置成Landscape或Portrait模式,覆盖缺省的打印设置。

Page.Range=<page range string>

  这个属性为一字符串指明你要打印的页数。在字符串中的数字用逗号分隔,或者数字之间用由一横线分隔表示一范围或两者同时使用,例如:"1,2,3,6-12",空字符串表示要打印所有的页。

Page.RangeInclude=0(全部打印)或1(打印奇数页)或2(打印偶数页)

  这个属性用来指示在Page.Range指示的范围中哪些页要打印。你可以先选择打印偶数页,然后将纸放入打印机中,再选择奇数页打印。这一功能像在打印书时那样,需在纸的两面打印时非常有用。 Paper.Size=<an integer>
这一属性用来指示打印纸的尺寸。可接受的值如下:
0-缺省
1-Letter 8 1/2 x 11 in
2-LetterSmall 8 1/2 x 11 in
3-Tabloid 17 x 11 inches
4-Ledger 17 x 11 in
5-Legal 8 1/2 x 14 in
6-Statement 5 1/2 x 8 1/2 in
7-Executive 7 1/4 x 10 1/2 in
8-A3 297 x 420 mm
9-A4 210 x 297 mm
10-A4 Small 210 x 297 mm
11-A5 148 x 210 mm
12-B4 250 x 354
13-B5 182 x 257 mm
14-Folio 8 1/2 x 13 in
15-Quarto 215 x 275 mm
16-10 x 14 in
17-11 x 17 in
18-Note 8 1/2 x 11 in
19-Envelope #9 3 7/8 x 8 7/8
20-Envelope #10 4 1/8 x 9 1/2
21-Envelope #11 4 1/2 x 10 3/8
22-Envelope #12 4 x 11 1/276
23-Envelope #14 5 x 11 1/2
24-C size sheet
25-D size sheet
26-E size sheet
27-Envelope DL 110 x 220 mm
28-Envelope C5 162 x 229 mm
29-Envelope C3 324 x 458 mm
30-Envelope C4 229 x 324 mm
31-Envelope C6 114 x 162 mm
32-Envelope C65 114 x 229 mm
33-Envelope B4 250 x 353 mm
34-Envelope B5 176 x 250 mm
35-Envelope B6 176 x 125 mm
36-Envelope 110 x 230 mm
37-Envelope Monarch 3.875 x 7.5 in
38-6 3/4 Envelope 3 5/8 x 6 1/2 in
39-US Std Fanfold 14 7/8 x 11 in
40-German Std Fanfold 8 1/2 x 12 in
41-German Legal Fanfold 8 1/2 x 13 in
Paper.Source=<an integer>
这一属性是一个整型值,指明纸的来源。可接受的值如下:
0-Default
1-Upper
2-Lower
3-Middle
4-Manual
5-Envelope
6-Envelope manual
7-Auto
8-Tractor
9-Smallfmt
10-Largefmt
11-Large capacity
14-Cassette
Preview=Yes(进入打印预览状态)或No(缺省-退出打印预览状态)
这个属性允许您的DataWindow进入和退出打印预览状态。这种状态可以所见即所得地看到用户即将打印的结果。
Preview.Rulers=Yes(显示标尺)或No(缺省-不显示标尺)
这个属性是指Print Preview状态下,是否要在DataWindow对象上显示标尺。
Preview.Zoom=<an integer>
这个属性是Print Preview状态下,为预览的DataWindow指定一个放缩因子。缺省值为10
0%(Preview.zoom=100%)
Prompt=Yes(缺省-显示提示)或No(无提示)
这个属性可以控制PowerBuilder显示一个允许用户在作业打印前取消打印作业的提示。

Quality=0(缺省)or 1(高)or 2(适中)or 3(低)or 4(草稿)
这个属性可以选择打印输出的质量。
Scale=<an integer>
这个属性指定打印输出放大或缩小的比例。
制作一个屏幕打印:如何打印全屏
PowerBuilder 4.0的一个新特征是可以把屏幕图像提交打印作业,在纸上的任一点打印屏幕。我们使用PrintScreen()函数实现这一功能。
PrintScreen()的语法如下:
PrintScreen(print_job_number,x,y{,width,height})
执行这一函数,在指定的打印作业中将当前屏在由X,Y参数(千分之一寸为单位)指定的坐标处打印。width和height参数指示你所要的打印屏幕的宽和高。最后这两个参数是可选的,如果缺省,屏幕将按初始的宽度和度打印。


[办公软件]在sybase中插入图片、PDF、文本文件  [办公软件]安装Sybase ASE
[办公软件]linux指令大全(完整篇)  [办公软件]Linux新手入门常用命令大全
[办公软件]在RedHat Linux 9里安装gaim0.80  [办公软件]浅谈Linux 下Java 1.5 汉字方块问题解决方法
[办公软件]Linux程序员必读:中文化与GB18030标准  [办公软件]linux指令大全
[办公软件]制作Linux启动盘的四种方法  [办公软件]Linux文件系统的反删除方法
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · 办公软件  · 系统软件
    · 常用软件  · 聊天工具
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台