一个通用Datawindow打印控制程序 将数据窗口中的报表在打印机上输出是PowerBuilder应用程序开发过程中必不可少的功能,作为例子,这里提供一个使用上述方法研制的通用打印控制窗口,用以替代Prompt属性所提供的Print窗口,实现汉化界面,并且可被自行修改扩充。为了书写简单,程序中采用直接赋值的方式修改属性。 实例变量: datawindowdw_print stringprintername,name,port |
窗口open 事件脚 本: dw_print=Message.PowerObjectParm printername=dw_print.Object.Datawindow.Printer name=left(printername,pos(printername,"on")-1) port=right(printername,len(printername)-pos(printername,"on")-1) plb_printername.additem(name,1) st_portname.text=port “设置” 按钮clicked事件脚本 Integercode Code=printSetup() Ifcode=1then printername=dw_print.Object.Datawindow.Printer name=left(printername,pos(printername,"on")-1) port=right(printername,len(printername)-pos(printername,"on")-1) plb_printername.additem(name,1) st_portname.text=port endif |
打印范围组中“全部”选择钮clicked事件 脚本 dw_print.object.DataWindow.Print.Range='' sle_1.enabled=false sle_2.enabled=false sle_3.enabled=false “页数” 栏后sle_2单行文本编辑框Modified事件 脚本 dw_print.object.DataWindow.Print.Page.Range=sle_1.text +"-"+sle_2.text “自定 义”栏后sle_3单行文 本编辑 框Modified事件脚本 dw_print.object.DataWindow.Print.Page.Range=sle_3.text |
打印份数组中份数单行文本编辑框Modified事件脚本 dw_print.Object.DataWindow.Print.Copies=integer(this.text) |
“全部” 选择钮Cliecked事件 脚本 dw_print.Object.DataWindow.Print.Page.Rangeinclude =0 |
“奇数” 选择钮Cliecked事件 脚本 dw_print.Object.DataWindow.Print.Page.Rangeinclude =1 |
“偶数” 选择钮Cliecked事件 脚本 dw_print.Object.DataWindow.Print.Page.Rangeinclude =2 |
“确认” 命令按 钮Clicked事件脚本 longjob ifIsValid(dw_print)then job=PrintOpen() PrintDataWindow(job,dw_print) PrintClose(job) close(parent) endif |
“取消” 命令按 钮Clicked事件脚本 窗口调用方法:在其它带有数据窗口的窗口中,使用OpenWithParm(w_print_set,dwname) 即可,其中w_print_set为本窗口名,dwname为要打印的数据窗口。该程序是一个通用打印控制程序,可在任何版本的PowerBuilder应用中使用。  
2/2 首页 上一页 1 2 |