中华网通行证
用户名 密码
  科技动态 硬件广场 下载基地 网络教室 网络冲浪 科学博览 移动时代 手机上网 桌面壁纸 科技商情  

PB编程技巧二则
褚艳玲 2000-11-16 16:17:33

  在PB编程中,我们经常需要应用一些小的技巧,如:使数据窗口每页打印固定行、在系统中嵌入Excel对象等。下面,笔者将结合实际介绍这些小的技巧应用。

  一、页面的精确打印
  关于数据窗口每页打印固定行的问题:

  1.增加一个计算列,此计算列必须放在Detail段的Expression中输入:

  ceiling(getrow()/20)

  //这里20还可以用全局函数取代,这样可以允许用户任意设置每页打印多少行。

  2.定义分组,选择选单“Rows->Create Group...”,并按计算列字段分组。最后一定将“check box-->New Page On Group Break”选中。

  3.将此计算列设为不可视。

  另外,如果需要最后一页不足补空行。也很简单,程序如下:

  long ll_pagerow = 10

  //每页打印行数

  long ll_count, ll_row

  ll_count = dw_report.retrieve(...) //取得现有报表的总行数

  ll_count = ll_pagerow - mod(ll_count, ll_pagerow)

  If ll_count < ll_pagerow Then

  for ll_row = 1 to ll_count

   dw_print.insertrow(0)

  //补足空行

  next

  end If

  二、如何嵌入Excel对象
  在进行程序开发时,有时会需要将PowerBuilder与Excel应用程序结合使用,如将数据检索出来后,按照格式要求,将数据转入到Excel表格中。实现步骤如下:

  1.创建并连接对象:

  oleobject loo_excel

  oleobject loo_sheet

  loo_excel=create oleobject

  loo_excel.ConnectToNewObject("Excel.Application")

  //设置缺省的字体与大小

  loo_excel.Application.StandardFont = "Arial Narrow"

  loo_excel.Application.StandardFontSize = "8"

  loo_excel.Application.Workbooks.Add()

  loo_sheet=loo_excel.Application.Workbooks(1).worksheets(1)

  loo_excel.Application.Visible=true

  loo_excel.Application.ScreenUpdating = false //屏蔽可见属性

  2.调用Excel本身的属性,函数,通过数据窗口填写数据到Excel:

  loo_excel.Application.ScreenUpdating = true //设置可见属性

  3.断开连接并释放对象:

  loo_excel.DisconnectObject()

  //注:建议引用API函数,捕获Handle。

  destroy loo_excel

  以上程序已在PB6.0、Windows 98平台上运行通过。


赛迪网
相关报道
如何实现PB5应用程序的安全迁移 (2000-11-16 16:15:36)
利用PB实现动态系统用户登录 (2000-11-16 16:11:59)
利用PB动态创建数据窗口 (2000-11-16 16:09:46)




本站检索



中华网推荐

·国家级治脑病新药思维源
·中藏药治疗脑病新突破
·治类风湿,强直性脊柱炎
·养肾·痛风·长寿
·肝病泌尿脑萎缩新药介绍
·强直性脊柱炎康复乐园
·让中医辩证不孕不育
·国医治股骨头坏死一绝
·乙肝为何久治不愈?
·二千元垄断批发做老板
·中医中药专治前列腺
·治牛皮癣白癜风已成现实
·专治痛风病的白衣天使
·不孕不育的杏林奇葩
·专卖店零售管理系统





   

网络教室编辑信箱