熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Delphi編程 >> 正文

初識Rave

2022-06-13   來源: Delphi編程 
  初識Rave

  其實在Delphi發布以前我們就已經看到過有關Rave的相關內容但它在那時是非常的復雜的如圖所示


Delphi下面的Rave

  而在使用它時我們會看到一個與現在的界面相差不是太多的一個設計界面如圖所示


Rave的設計界面

  通過這樣的一個報表設計界面開發人員可以開發出符合用戶要求的報表來而且更可貴的是這一切與使用Delphi集成開發環境幾乎是完全的一樣這可能是Rave與其它的報表組件最大的外觀上的不同吧!

  在圖我們看到的是Rave中的界面而當Delphi發布後Rave也隨之升級為Rave而它們的組件也產生了非常大的變化而這些變化是在吸收了Rave的優點並更加集成化後得到的一個新的版本如圖所示


Delphi下的Rave

  而在設計報表時它的報表組件欄也再一次的支持了浮動功能這樣就可以更加容易的進行自定義的處理如圖所示


Rave的報表設計界面

  了解到這些後那麼該如何使用這些組件並且如何進行報表的設計及分發該如何讓這些設計好的報表與我們的應用程序緊密的集成這些問題都被列上了日程接下來就讓我們對Rave的一些特點進行深入的了解相信讀者在看完這些後結合Rave的幫助信息可以非常容易的完成自己的報表設計

  Rave組件的介紹

  正如前面我們所看到的Rave報表組件已經在Delphi中被默認的安裝了使用過報表組件的開發人員都知道如果一個好的報表組件就必須具備以下幾個特點

  ▲簡單易用

  ▲模塊化強

  ▲有供開發人員和用戶使用的報表設計器

  ▲可以與應用程序高度集成

  ▲具備優秀的數據庫連接能力

  而我們已經知道的報表組件QuickReportFastReportReportBuilder都具備了這樣的幾個特點那麼Rave又是怎樣支持這樣的幾個特點的呢?如果想了解這些內容那麼就必須進行深入的使用才可以讓我們充分的體會到Rave強大的功能

  簡單易用

  如果說FastReport是Delphi報表組件當中最為優秀的相信沒有讀者會反對而Rave在繼承了它的優點的同時也體現了自己的特色簡單易用就是它的最大的特點

  如果現在你需要設計一個報表那麼可以有兩個選擇進行這項工作

  啟動報表設計器

  使用Delphi 集成開發環境下的菜單項選項如圖所示


菜單項啟動Rave

  當你選擇了Rave Designer菜單項後相應的Rave報表設計環境將自動的啟動如圖所示


啟動過程

  如果此時你的計算機系統足夠快的話不用幾秒鐘讀者一定會看到Rave的報表設計器界面如圖所示


Rave的報表設計器

  如果到了圖所示的報表設計器界面那麼就可以開始正常的報表設計了相信這時就可以發揮讀者設計報表的功力了

  當然除此之外還有一種方法可以讓我們調用這樣的報表設計器那就是

   使用組件打開報表設計器

  如果現在是在設計的環境下那麼同樣可以使用組件來打開相應的報表設計器但要注意的是現在必須使用(RvProject)報表項目組件來進行處理具體的處理過程是

  在相應的表單中放入RvProject組件並且在RvProject組件上面雙擊鼠標左鍵如圖所示


使用組件打開報表設計器

  這時我們同樣可以看到圖所示的報表設計器的啟動過程而且只需幾秒鐘讀者就可以看到圖所示的報表設計界面

  從這兩點中相信讀者不難看出它在啟動方面與其它的報表設計組件是不相上下的並且使用方面也是非常的簡單

  設計簡單的報表

  1報表設計器概覽

  如果現在你想設計一個報表那麼它絕對是一個非常簡單的過程不過在設計報表之前讓我們先來了解一下報表設計器的一些特點如圖所示


報表設計器概覽

  而如圖中的設計器主菜單中我們可以看到它其中已經包括了所有的報表操作選項如圖所示


Rave報表設計器的菜單項

  不過幸好Rave提供了快捷按鈕這樣的設計方式通過這樣的處理開發人員可以非常快捷的使用這些功能而不用來回的在菜單下進行操作如圖所示


報表設計器的快捷操作按鈕

  在這裡與Delphi中的項目概念是一樣的一般Rave報表是由【項目】【報表】【頁面】所組成的也就是說當要為一個應用程序設計報表時一般是先建立一個項目接下來建立一個新的報表最後進行頁面的設計這樣就可以設計完成一個最基本的報表如果在此時需要對報表設計器的基本環境進行設置那麼圖所示的快捷按鈕可以幫助你完成這一切


報表設計器的頁面設計

  而在這裡面對我們設計最為主要的幾個快捷按鈕在使用過程中需要注意如果你需要相應的報表網格線那麼可以使用圖中所示的【激活網格線】的快捷按鈕而且最終會發現報表設計表單中會出現相應的網格線如圖所示


設計器的網格線

  而如果此時需要顯示相應的標尺那麼就點擊顯示標尺按鈕那麼我們會發現設計環境下已經有了相應的標尺如圖所示


設計器的標尺顯示

  經過這樣處理後讀者現在可以利用標尺進行精確的報表設計了這在設計復雜報表時是非常有用的一個項目但是不知道讀者發現沒有此時的報表設計環境是一個虛擬的頁面作為報表設計的基礎因為現在的打印機不能進行滿頁的打印那麼在虛擬的頁面中也就有了報表打印界線這樣的一個概念在Rave的報表設計環境下是用一個紅色的矩形進行標注的而是否顯示這樣的界線就是顯示【可使用區域】按鈕的作用所在而這些內容可以在圖中得到驗證


可打印區域的顯示

  如果此時你將報表內容設計在線框之外那麼在報表打印時越界的部分就不會被打印這也再一次給開發人員提供了非常大的方便

  而這些報表設計器中的更多的設置還需要使用【編輯器屬性】進行設置如圖所示


報表設計器的配置環境

  這裡面有相關的設置需要開發人員在使用的過程中進行仔細的配置在這裡就不具體的進行講述了不過有一點使用默認的配置已經可以滿足絕大數報表設計人員的具體需求了

  表面看起來Rave的報表設計環境在某種程度上與Delphi的集成開發環境非常的相似而它其中的對象檢視器無論是在外觀還是在停靠的位置上都與Delphi中的目標檢視非常的相似既然外觀相似那麼相應的功能也沒有太大的不同就是將相應的報表對象中具體的設置列出供開發人員進行使用如圖所示


報表設計器中的屬性欄(對象檢視器)

  然而作為對象檢視器它是面對每一個具體的對象的那麼就沒有固定的內容也就是說圖只是其中一種表現形式更多的形式還需要讀者在使用的過程中注意設計器的最右邊是對象樹它就是通過將對象進行樹狀處理來進行顯示這與Delphi中的對象樹非常的相似如圖所示


報表導航欄(報表對象樹)

  不過看完這些內容後如果讀者已經是一個Delphi Fan那麼相信使用Rave一定不是問題它們在某些方面太相像了

  最後讓人有種回歸組件面板概念的是Rave報表設計器中的組件面板如圖所示


報表設計器的組件面板

  圖中所描述的組件面板包括了在一個報表設計中需要的所有的組件有線標簽報表對象等內容而這些只需要使用者發揮自己的想象來進行使用了

  2設計簡單的報表

  介紹了報表設計器的環境那麼接下來就需要具體來實現一個簡單的報表來讓大家看一看設計一個報表都需要哪些具體的組件及如何進行報表預覽

  (1)新建一個項目

  如果想建立一個報表那麼必須要新建一個項目選擇快捷按鈕[New Project]就可以辦到這一點而如果是新建的項目那麼它默認情況下是包括一個新的報表的

  (2)新建打印區域

  在Rave中有一項其它報表組件不具備的功能就是打印區域的概念而這一概念就是在一個虛擬的頁面中建立一個可以打印的區域而這一區域是在打印機可打印區域以內的而如果使用這樣的一個區域就需要使用Rave組件面板中的Report面板下的Region組件如圖所示


初次使用Region

  圖中所示的灰色區域就是打印區域那麼如果要打印相應的內容就需要在這個區域內容進行處理超過這一區域的內容將不會被打印

  (3)建立打印帶區

  如果說什麼是打印帶區那麼真是不好解釋因為它是程序設計人員在設計報表時需要知道的最基本的概念雖然是最基本的概念但它還真不好說清楚在這裡我們將它解釋如下

  我們知道一個報表分為頁標題報表標題副標題表頭表體表尾表尾說明等內容而這些內容一般可以使用從上到下的一組區域進行描述如圖所示


報表的結構

  當我們看到圖那麼就不難解釋什麼是報表中的帶區概念了圖中每一處的標注都可以稱為報表的帶區而在Rave報表設計器中就是將相應的報表進行拆分最終成為每一個帶區的而在其中它把帶區稱為Band如果同樣要進行報表的設計我們也應該將自己的報表按照帶區的規定進行規范而Rave中是將相應的帶區分為常規帶區數據帶區

  一般來說像報表標題報表副標題這樣一成不變的內容都可以用常規帶區進行描述而像其中的一些數據則可以用數據帶區描述而表示這兩種帶區的組件如圖所示


帶區描述

  經過這樣的設計後報表設計者可以將報表進行合理的規劃並且可以進行程序化而最終的設計報表結果如圖所示


最終報表顯示

  這樣通過新建項目新建打印區域新建打印帶區這三個步驟並結合相應的報表組件我們已經可以非常容易的建立一個簡單的報表了在建立完成一個報表項目後保存它這樣就可以進行繼續編輯或與應用程序一起進行發行而從這一系列的操作過程中都可以讓讀者感覺到與編寫Delphi程序一樣的感受這可能是Rave有別與其它的報表設計組件的一大特點吧!

  3建立數據報表

  前面我們已經利用Rave的報表設計器設計了一個非常簡單的報表但通過這個報表的設計讀者已經知道如何利用最基本的組件來設計一個報表當然在實際使用過程中很少用到這樣簡單的報表而實際中使用得非常多的環境就是為Delphi的數據庫應用程序提供強大的報表處理功能而這時如何設計一個數據庫報表就被列上了議事日程那麼究竟該如何設計一個數據報表呢?它有哪些步驟?需要使用哪組件對象?都是我們將要解決的問題有鑒於此下面就來開始制作數據報表的歷程吧!

  (1)建立數據源

  這可能是任何一個數據報表都要經過的一個步驟吧!而建立數據源在Delphi中那是非常簡單的事情基本上可以使用任何的數據接口來完成這一步具體的步驟請參閱Delphi中有關數據接口的相關部分在這裡我們默認有一個由BDE作為接口的程序如果要連接Rave制作的報表那麼就必須與Rave建立相應的聯系而將數據庫接口與報表進行結合方面Rave提供了四個組件供我們選擇如圖所示


數據連接組件介紹

  單從名稱上來看RvQueryConnection和RvTableConnection是專門應用於Table和Query組件的連接組件而RvCustomConnection則是自定義的連接組件這些都是非常專用的組件而RvdataSetConnection組件則比較方便因為它不僅可以連接數據表組件而且還可以與任何的數據集進行連接這樣是非常方便的出於此原因就選擇RvDataSetConnection組件作為示例的連接組件而最終連接成的結果如圖所示


在設計窗體中的數據連接組件

  這樣就為Rave報表建立了一個完整的數據庫連接當再一次進行相應的報表設計器時系統已經可以使用相關的報表對象進行報表的處理了

  (2)建立報表數據

  已經為報表提供了相應的數據源那麼就必須在報表中進行連接而Rave報表設計器也為這樣的處理提供了非常方便的處理方式而處理這種數據源的報表對象就是(新的數據庫對象)當點擊它後會出現如圖所示的界面供選擇


報表設計器中的數據連接組件

  

  基本上數據加密對象和簡單的加密控制使用的不多而最多的也就是數據庫連接直接數據視圖驅動數據視圖這三個項目其實數據庫連接就好像剛才我們建立的數據源一樣來向報表提供相應的數據並且通過驅動數據視圖進行數據再現

  如果此時已經定義了相應的數據源那麼在這裡可以直接使用直接數據視圖進行操作當然這樣就更加靈活一點現在因為已經定義了相應的數據源那麼就直接使用直接數據視圖進行定義如圖所示


選擇報表設計器中的數據連接

  在圖中的第二幅圖中選擇相應的激活的數據連接並選擇[Finish]按鈕這樣一個數據連接就被建立在相應的報表中而從報表導航欄中也可以看到相應的結果如圖所示


報表導航欄

  這樣通過這一系列的步驟就在相應的報表中建立了一個數據連接那麼既然數據連接已經建立接下來就是進行數據的使用了

  (3)建立數據帶區

  如果在一個報表中使用數據庫數據那麼就必須建立相應的數據帶區而這個數據帶區就必須建立在相應的可控制區域(Region) 中而數據帶區中就必須設置相應的數據連接對象來進行相應的數據處理而這個參數就是數據帶區的DataView屬性如圖所示


DataBand的DataView屬性

  選擇其中的一個那麼就表示現在的數據帶區所對應的數據源是由DataView所表示的內容這樣也表示此數據帶區只為DataView所指定的數據內容服務

  注意在多個數據帶區進行處理時如何判斷數據帶區的服務數據一般是通過DataView屬性進行判斷的

  4放置數據顯示對象

  既然已經建立了相應的數據帶區那麼接下來就是如何顯示相應的具體數據而要顯示的這些內容首先就必須在相應的數據帶區中放置指定的數據顯示對象而Rave中有許多的相關數據顯示對象它們一般都集中於如圖所示的數據顯示對象組中


顯示數據組件

  通過這些報表對象可以讓報表顯示相應的數據信息當然這些信息可以是文字大幅面的內容圖片除此之外還可以使用它們來控制相應的報表運行狀態

  經過這樣一處理就可以得到相應的報表內容就是這個簡單的數據報表所示的結果


顯示組件所構成的報表

  而從圖中可以看到其中使用了圖中所描述的相關報表對象而這正是在正式的報表設計中不可缺少的部分當然你也可以將它設計的更加復雜一些加入更多的報表對象這樣與實際使用的報表就非常的接近了

  5預覽報表

  當然建立好相應的報表最希望的就是看到相應的報表結果而這一切在不離開rave報表設計器的情況下都是可以辦到的而有兩個方法可以看到相應的結果

  (1)使用菜單項進行報表的預覽

  如果想使用菜單項進行報表的預覽那麼就必須使用圖所示的菜單項進行處理


預覽報表

  (2)使用快捷按鈕進行處理

  當然 最方便的還是使用快捷按鈕進行處理而在Rave報表設計器中可以使用按鈕進行報表的預覽但是無論采用什麼樣的方式最終都可以看到如圖所示的報表預覽內容


報表預覽結果

  這樣我們就在Rave報表設計器的幫助下完成了一個具有基本報表功能的簡單報表那麼接下來就是如何更進一步使用它們如果想了解更多的有關Rave報表的內容請看相關文章!


From:http://tw.wingwit.com/Article/program/Delphi/201311/8499.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.