原創|使用教程|編輯:我只采一朵|2018-02-06 17:07:39.000|閱讀 1953 次
概述:在本文中,我們將講解FastReport VCL 5的新功能之一——交互式圖表
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
在本文中,我們將講解FastReport VCL 5的新功能之一——交互式圖表。在這項功能的幫助下,你可以顯示圖表的選定區域的詳細信息報表。
功能介紹:
首先,創建一個圖表,例如,一個圓形的:
圖表分為幾個部分,分別顯示各參數占總量的比例。將鼠標指針懸停在某個部分上時,將以彩色突出顯示。
然后,當你右鍵單擊時,將觸發到鉆取報表的超鏈接。在這種情況下,參數(一個部分的名稱)的值將傳輸到此報表。詳細信息報表顯示所選部分的詳細信息:
如何創建:
要實現這種交互非常簡單。你需要創建一個包含圖表和詳細信息報表的報表,并配置從圖表到詳細信息報表的超鏈接。
現在創建一個空的報表。
1.首先,我們需要為圖表準備一些數據。因此,請轉到“數據”選項卡。我們添加一個連接到ADO數據庫。我們使用FastReport VCL交付的demo.mdb演示數據庫。然后,添加ADO查詢組件。雙擊查詢編輯器以打開數據庫,然后寫如下請求:
SELECT c.Continent, SUM(c.Area) AS Area FROM country c GROUP BY c.Continent
2.返回報表頁面,將圖表對象放置在帶區上。雙擊打開編輯器,添加一個新的序列。我們來選擇這個序列的類型 – 水平條形。
然后指定數據源。在Y軸上,我們顯示區域字段。在“Label”一欄,使用“Continent”字段。
3.現在我們需要創建一個詳細信息報表。
4.轉到數據選項卡。將連接添加到相同的數據庫和ADO表組件,選擇表名稱——“country”。
5.使用變量編輯器,添加FilterVariable,我們將把大陸的名稱傳遞到其中,并對表進行過濾。
6. 將變量放置到報告標題。然后將以下字段放在MasterData帶上——Name、Capital 和 Population:
7.雙擊數據帶,打開編輯器。在“Filter”字段中輸入表達式:
<ADOTable1. "Continent"> = <FilterVar>
將報表保存為“詳細信息”。
8.回到帶有圖表的報表。點擊的圖表。在屬性檢查器中,我們需要的是超鏈接,展開它:
這里注意View屬性是很重要的。在下拉列表中,您可以為其選擇以下值之一:
對于帶有交互式圖表的當前示例,適合的選項是DetailPage和DetailReport。正如你所理解的那樣,你既可以將詳細信息報表放置在當前報表的另一頁上,也可以放置在單獨的報表里。由于我們選擇了第二個選項,因此DetailPage屬性保持為空。對于DetailReport,我們指定了詳細信息報表文件的路徑,它可以是絕對路徑或相對路徑(相對于應用程序的工作目錄)。
Expression屬性對我們也沒有用處。其中,你可以為超鏈接和其他類型的超鏈接指定一個值。
由于我們將選定的值從圖表傳輸到詳細信息報表,因此我們在ReportVariable字段中指定了變量名稱。
在TabCaption屬性中,然后將從圖中分配一個實際值。
Value字段允許你設置默認值,然后將從圖表中分配一個實際值。
如果要傳遞多個參數值,則由ValuesSeparator指定一個分隔符。
9.要完成該示例,只需為圖表對象添加OnPreviewClick事件處理句柄。在這里,我們編寫下面的代碼:
if TfrxChartView (Sender) .ClickedVal1 <> '' then TfrxChartView (Sender) .Hyperlink.Value: = '' '' + TfrxChartView (Sender) .ClickedVal1 + '' ''
從代碼中可以清楚的看到,如果選擇了任何值,它都將被寫入Value屬性。
現在,你可以運行報表并查看效果:
選擇“南美洲”。然后根據國家的人數信息得到詳細信息報表:
順便說一下,如果要在懸停時更改選擇的圖表元素的顏色,請使用圖表對象的HighlightColor屬性。
最后總結一下。在FastReport VCL的第五個版本中,你可以選擇各個圖表元素并獲取它們的含義。另外,與單個URL相比,超鏈接的功能顯著擴展。由于這些變化,你可以通過隱藏詳細信息輕松地使報表變得更緊湊和有吸引力。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn