PowerBuilder中实现数据窗口打印预览通用方法

PowerBuilder中实现数据窗口打印预览通用方法

(加入日期:2001-11-11)

保存文章至硬盘】【打印文章】【字体:

分享到: 0
  我们在文字处理过程中,常常在打印前要预览,以便控制打印效果,特别在数据打印中要有选择地打印页面,更需要预览。PowerBuilder提供了程序开发过程中的数据打印预览,下面介绍在程序应用中实现打印预览通用方法。主窗口示意图如下:


打印预览窗口

预览尺寸

自定义 30% 50% 100% 200% 标尺

一、上述W_preview窗口中各控件说明:

1. 命令按钮控件(CommandButton)

Cb_1: 用于数据窗口翻至首页。

Cb_2: 用于数据窗口向上翻页。

Cb_3: 用于数据窗口向下翻页。

Cb_4: 用于数据窗口翻至尾页。

Cb_5: 用于关闭打印预览数据窗口。

2.复选框控件(CheckBox)

Cbx_1:用于为预览数据窗口添加显示标尺。

3.掩码编辑器控件(EditMask)

Em_1:用于显示和改变打印预览的相对比例。

4.成组框控件(GroupBox)

Gb_1:用于显示一组控件的共同属性信息。

5.收音机按钮控件(RadioButton)

Rb_1:用于用户自定义打印预览显示比例。

Rb_2:用于用户设置打印预览显示比例为30%。

Rb_3:用于用户设置打印预览显示比例为50%。

Rb_4:用于用户设置打印预览显示比例为100%。

Rb_5:用于用户设置打印预览显示比例为200%。

6.数据窗口控件(DataWindow)

dw_1:用于显示打印预览结果。


二、下面讲述创建上述窗口的实现过程:

1.创建一个新窗口W_preview,设置该窗口的类型(WindowType)为Response,设置窗口的标题(Title)为“打印预览窗口"。

2.在主窗口中按示意图放置各个控件,为掩码编辑器(Em_1)定义属性,在General页中定义Text为“100”,在Mask页中为Mask定义为“###”,选中Spin Control, 设置Spin Increment为“1”,设置Spin Range的Min为“1”、Max为“200”。

3.为窗口创建结构s_preview,具体步骤是:在PowerBar工具栏中点取结构画笔(Structure),在“选择结构(Select Structure)”对话框中单击“New"按钮,进入结构定义窗口,在结构成员名(Variable Name)中输入“dw_name",在结构类型(Type)中选择“String",以“s_preview"为对象名保存此结构。

4.为窗口w_preview定义Open事件程序如下:

s_preview preview_parm

preview_parm=Message.Powerobjectparm

dw_1.Dataobject=preview_parm.dw_name

dw_1.Settransobject(SQLCA)

dw_1.Objectwindow.Print.Preview=“yes"

5.为掩码编辑器(Em_1)定义二个用户事件(User Events),二事件名称为user_change和user_room, 事件user_change 的事件标识为pbm_enchange,它是在编辑器值发生改变时触发,事件user_room的事件标识为pbm_custom01,它是在用户调用TriggerEvent()函数时触发,下面介绍这二事件的程序。

user_change事件程序如下:

IF Integer(This.Text)>0 And Integer(This.Text)Dw_1.Object.Datawindow.Print.Preview.Zoom=Integer(This.Text)

END IF

Rb_1.Checked=True

user_room事件程序如下:

IF Integer(This.Text)>0 And Integer(This.Text)Dw_1.Object.Datawindow.Print.Preview.Zoom=Integer(This.Text)

END IF

6.收音机按钮Rb_2的Clicked事件程序如下:

Em_1.Text=“30”

Em_1.TriggerEvent("user_room")

7.收音机按钮Rb_3的Clicked事件程序如下:

Em_1.Text=“50”

Em_1.TriggerEvent("user_room")

8.收音机按钮Rb_4的Clicked事件程序如下:

Em_1.Text=“100”

Em_1.TriggerEvent("user_room")

9.收音机按钮Rb_5的Clicked事件程序如下:

Em_1.Text=“200”

Em_1.TriggerEvent("user_room")

10.复选框Cbx_1的Clicked事件程序如下:

IF Cbx_1.Checked=TRUE THEN

Dw_1.Object.Datawindow.Print.Preview.Rulers=“yes"

ELSE

Dw_1.Object.Datawindow.Print.Preview.Rulers=“no"

END IF

11.命令按钮Cb_1的Clicked事件程序如下:

Dw_1.ScrollToRow(0) //翻至首页

12.命令按钮Cb_2的Clicked事件程序如下:

Dw_1.ScrollPriorPage() //翻至前页

13.命令按钮Cb_3的Clicked事件程序如下:

Dw_1.ScrollNextPage() //翻至后页

14.命令按钮Cb_4的Clicked事件程序如下:

Dw_1.ScrollToRow(999999999) //翻至尾页

15.命令按钮Cb_5的Clicked事件程序如下:

Close(Parent) //退出打印预览

16.以w_preview为窗口名,保存上述窗口。


三、调用上述通用打印预览窗口(w_preview)

被预览的数据窗口可以是普通数据窗口,也可以是复合数据窗口,假设要预览的数据窗口为Dw_2,用如下方法调用:

s_preview ls_parm

ls_parm.dw_name=“temp.psr”

dw_2.Saveas("temp.psr",PSREPORT!,True)

OpenWithParm(w_preview,ls_parm) 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
PowerBuilder,可以使用数据窗口对象来实现下拉列表功能。下面是一种常见的实现方法: 1. 首先,创建一个数据窗口对象,并在该对象添加一个下拉列表控件。可以在数据窗口的“编辑”选项选择“添加控件”,然后在弹出的对话框选择下拉列表控件。 2. 在添加下拉列表控件后,可以通过修改该控件的属性来设置下拉列表的选项。可以在控件的属性列表找到“下拉数据窗口”的属性,然后选择一个数据窗口对象作为下拉列表的数据源。 3. 在下拉数据窗口,可以定义下拉列表的选项。可以添加一个或多个数据窗口列来表示下拉列表的选项,然后在这些列填写相应的选项值。 4. 完成上述设置后,可以在代码使用数据窗口对象和下拉列表控件来实现下拉列表功能。可以使用数据窗口对象的`dw_1.SetTransObject(SQLCA)`方法来设置数据窗口对象的事务对象,然后使用`dw_1.Retrieve()`方法来检索下拉列表的选项。 5. 在使用下拉列表时,可以通过调用下拉列表控件的`dw_1.GetSelectedText()`方法来获取用户选择的选项值。可以将该选项值保存到变量,以便在后续的逻辑使用。 这种方式利用数据窗口对象实现下拉列表功能,可以方便地管理和维护下拉列表的选项,并且具有良好的可扩展性和可重用性。此外,PowerBuilder还提供了其他方式来实现下拉列表功能,例如使用下拉列表框控件或自定义绘图控件等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值