PB中資料視窗的精確頁面列印技術

來源:互聯網
上載者:User
  1.引言

自PowerBuild4.0問世以來,以其簡潔高效的整合式開發環境、強大的資料視窗技術、(幾乎)無所不能的資料庫訪問能力,越來越受到編程人員的青睞。據Sybase自己的統計,目前全球有60萬程式員和系統分析人員在使用他們的Powerbuilder和S-designer,進行各種類型的應用程式開發。最新發行的PowerBuilder6.0族系列開發工具,直接支援ActiveX技術、ServerPush技術,對分散式運算模型的定義更加明確,實現更為簡便,並可以利用資料視窗直接產生HTML格式檔案,等等。所以,PowerBuilder 已成為C/S模式應用和基於InterNet 模式應用的主要開發工具之 一。

資料視窗(DataWindow)是PowerBuilder的專利,也是PowerBuilder應用程式的核心和精華所在.PowerBuilder通過豐富的屬性和函數來控制資料視窗的顯示和資料操縱,但對資料視窗的列印支援似乎過於簡單,只有一個Print() 視窗函數和一個PrintDataWindowPowerScript函數,並且這兩個函數的功能幾乎都是一樣,都只簡單地將選定資料視窗原樣送入列印佇列,本身 不具備頁面控制功能。為此很多程式員抱怨這是PowerBuilder的一個缺陷,其實,PowerBuilder對列印功能的支援一樣十分周到全面,只不過應用場合不同,需要使用者自行加以選擇。

以下是對PowerBuilder列印控制功能的詳盡分析,並介紹一個實用的資料視窗頁面控製程序。

2.Powerbuilder實現動態網頁面控制的途徑

PowerBuilder資料視窗有一對函數Describe 和Modify,用於動態描述和修改資料視窗結構,與其它相關函數結合可以完成動態產生資料視窗、任意改變資料視窗顯示方式、修改列印屬性等。這兩個函數是控制與修改資料視窗的核心函數,其使用方法如下:

1)Describe擷取資料視窗特定屬性值

 文法:dwcontrol.Describe(propertylist)

 參數:dwcontrol資料視窗(或datastore)控 件名。

propertylist用字串表示的資料視窗屬性。

 傳回值:返回一個表示屬性的字串。

 資料視窗屬性值也可以用dwcontrol.object.Datawindow.property來完成直接取得。

2)Modify修改資料視窗特定屬性

 文法:dwcontrol.Modify(modstring)

 參數:dwcontroldwcontrol資料視窗(或datastore)控 件名。

modstring用字串表示的資料視窗屬性。

 傳回值:如果函數執行成功返回“1”。

 與Describe類似, 修改資料視窗屬性可以用:

 dwcontrol.object.Datawindow.property=value直 接賦值。

3)與列印有關的資料視窗屬性

 資料視窗屬性中與列印有關的有24個,其中實現列印頁面控制的幾個屬性是:

 Copies:列印份數。

 Filename:如果不為空白,表示輸出到檔案的檔案名稱。

 Orientation:方向1=橫向,2=縱 向

 Page.Range:輸出頁範圍,要列印1,2,和5到10 頁,輸入: "1,2,5-10"。Page.RangeInclude:本 次列印範圍,0=全部,1= 偶數頁,2= 奇數頁。Paper.Size:紙張大小。

 Scale:列印比例。

程式中利用Modify函數設定好這些屬性後,即可實現動態修改資料視窗的目的,再調用datawindow.print()函數,完成最後的列印輸出。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.