• <menu id="w2i4a"></menu>
  • logo FastReport VCL程序員手冊(cè)
    文檔首頁>>FastReport VCL程序員手冊(cè)>>FastReport VCL程序員手冊(cè):如何打印數(shù)組、文件

    FastReport VCL程序員手冊(cè):如何打印數(shù)組、文件


    FastReport VCL是用于Delphi,C ++ Builder,RAD Studio和Lazarus的報(bào)告和文檔創(chuàng)建VCL庫。它提供了可視化模板設(shè)計(jì)器,可以訪問為30多種格式,并可以部署到云,網(wǎng)站,電子郵件和打印中。

    近日,F(xiàn)astReport VCL更新至v6.9,在新版本中,在PDF更新中增加了對(duì)以下對(duì)象的并行表單支持:文本,替換和圖片。能夠通過InteractiveForms字體子集屬性將所需的字形僅包含在相互之間形式中。同時(shí)修復(fù)了多個(gè)Bug問題。歡迎下載體驗(yàn)。(旁邊向下按鈕下載)

    立即點(diǎn)擊下載FastReport VCL v6.9最新版

    打印數(shù)組

    主要示例的代碼位于?FastReport Demos \ PrintArray?(“ FastReport Demos \ BCB Demos \ PrintArray”)目錄中。讓我們解釋幾個(gè)細(xì)節(jié)。

    為了打印一個(gè)數(shù)組,我們使用一個(gè)帶有“主數(shù)據(jù)”帶的報(bào)告,該報(bào)告將被多次顯示,因?yàn)閿?shù)組中有元素。為此,將一個(gè)TfrxUserDataSet組件放置在表單上,然后設(shè)置其屬性(可以在代碼中進(jìn)行,如我們的示例所示):

      RangeEnd := reCount
      RangeEndCount := a number of elements in an array
    之后,我們將數(shù)據(jù)帶連接到TfrxUserDataSet組件。為了表示數(shù)組元素,請(qǐng)將帶有[element]行的文本對(duì)象放在?Master Data?區(qū)域內(nèi)。?element?變量是使用TfrxReport.OnGetValue事件填充的。


    打印一個(gè)TStringList

    主要示例的代碼位于?FastReport Demos \ PrintStringList?(?FastReport Demos \ BCB Demos \ PrintStringList?)目錄中。該方法與使用數(shù)組的示例中的方法相同。

    打印文件

    主要示例的代碼位于?FastReport Demos \ PrintFile?(?FastReport Demos \ BCB Demos \ PrintFile?)目錄中。

    對(duì)于打印,您應(yīng)使用帶有“主數(shù)據(jù)”帶的報(bào)告,該報(bào)告將被打印一次(要執(zhí)行此操作,應(yīng)將其連接到包含一個(gè)記錄的數(shù)據(jù)源;從菜單中選擇一個(gè)名為“單行”的源)列表)在頻段中啟用了拉伸(“Stretch”)和拆分(“允許拆分”)。這意味著,束帶的拉伸方式允許為位于其中的所有對(duì)象找到空間。但是,如果band在頁面中找不到空間,它將在單獨(dú)的頁面中部分顯示。

    文件內(nèi)容通過?Text?對(duì)象顯示,其中包含[file]變量。與前面的示例一樣,此變量將填充到TfrxReport.OnGetValue事件中。對(duì)象中也啟用了拉伸(上下文菜單中的“ Stretch”項(xiàng)或StretchMode屬性= smActualHeight)。

    打印一個(gè)TStringGrid

    初始示例的代碼位于?FastReport Demos \ PrintStringGrid?(?FastReport Demos \ BCB Demos \ PrintStringGrid?“目錄中。讓我們解釋一些細(xì)節(jié)。

    該TStringGrid組件表示一個(gè)具有幾行和幾列的表。這意味著報(bào)告不僅可以按高度延伸,還可以按寬度延伸。要打印此類組件,讓我們使用?Cross-tab?對(duì)象(將TfrxCrossObject組件添加到項(xiàng)目中后,該對(duì)象將變?yōu)榭捎茫?。該?duì)象僅負(fù)責(zé)打印具有事先未知的行和列數(shù)的表數(shù)據(jù)。該對(duì)象有兩個(gè)版本:TfrxCrossView用于用戶的數(shù)據(jù)打印,以及TfrxDBCrossView用于從DB表中打印特殊準(zhǔn)備的數(shù)據(jù)。

    使用TfrxCrossView,應(yīng)該預(yù)先設(shè)置對(duì)象。為此,讓我們輸入報(bào)表的設(shè)計(jì)器,然后雙擊它來調(diào)用對(duì)象編輯器。我們必須設(shè)置行和列標(biāo)題嵌套的數(shù)量,以及表格單元格中值的數(shù)量。在我們的情況下,所有這些值都必須等于“ 1”。在我們的示例中,行和列的標(biāo)題以及行和列的總值也被禁用。

    在TfrxReport.OnBeforePrint事件中,必須使用StringGrid中的值填充對(duì)象。通過該TfrxCrossView.AddValue方法添加一個(gè)值。它的參數(shù)如下:行,列和單元格值的復(fù)合索引(由于對(duì)象在單元格中可以包含多個(gè)值,因此也是復(fù)合值)。

    打印TTable和TQuery

    初始示例的代碼位于?FastReport的Demos \ PrintTable?(?FastReport Demos \ BCB演示\ PrintTable?)目錄中。工作原理與示例中的相同TStringGrid。在這種情況下,行的索引是其序列號(hào),列的索引是表字段的名稱,單元格的值是表字段的值。請(qǐng)注意,必須在“交叉表”對(duì)象編輯器中禁用單元格元素的功能(由于單元格中存在各種數(shù)據(jù),因此會(huì)導(dǎo)致表創(chuàng)建錯(cuò)誤),并且還必須禁用表標(biāo)題的排序(否則,列將按字母順序排序)。

    如果您對(duì)FastReport感興趣,歡迎加入FastReport QQ交流群:801349317

    還想要更多嗎?您可以點(diǎn)擊閱讀【FastReport報(bào)表2020最新資源盤點(diǎn)】,查找需要的教程資源。讓人興奮的是FastReport .NET正在慧都網(wǎng)火熱銷售中!>>查看價(jià)格詳情

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();