PivotChart 和 PivotTable 的擴充功能

來源:互聯網
上載者:User
chart Wes Kim
Microsoft Corporation

2001 年 4 月

適用於:
Microsoft® Access 2002

摘要:介紹如何使用事件來擴充 Microsoft Access 2002 中 PivotTable 視圖和 PivotChart 視圖的功能。

目錄
簡介
事件可用的位置
資料來源事件
顯示事件
變更事件
命令事件
鍵盤和滑鼠事件
總結

簡介
通過 Microsoft® Office Web 元件,Microsoft Access 開發人員可以將 PivotTable® 和 PivotChart® 視圖包括在其應用程式中。在 Access 2002 中,已將多個新事件添加到 Access 10.0 物件程式庫,使開發人員能夠加強對 PivotTable 和 PivotChart 視圖的控制。本文簡要介紹了這些新事件以及如何使用它們。

有關這些事件的文法和程式碼範例,請參見“Access Visual Basic® 協助”。

事件可用的位置
並非所有事件都可用在 PivotTable 和 PivotChart 視圖中。下表概述了各種事件可用的位置。

事件 可用於 PivotTable 視圖中 可用於 PivotChart 視圖中
OnConnect、OnDisconnect 是 否
BeforeQuery, Query 是 否
AfterLayout、BeforeRender、AfterRender、AfterFinalRender 否 是
DataChange 是 否
DataSetChange 否 是
PivotTableChange 是 否
SelectionChange、ViewChange 是 是
CommandEnabled、CommandChecked、CommandBeforeExecute、CommandExecute 是 是
KeyDown、KeyPress、KeyUp、MouseDown、MouseMove、MouseUp、MouseWheel*、Click、DblClick 是 是


* 在鍵盤和滑鼠事件中,只有 MouseWheel 事件對於 Access 2002 是全新事件。

資料來源事件
OnConnect、OnDisconnect
OnConnect 事件發生在 PivotTable 視圖與其資料來源建立串連後,而 OnDisconnect 事件發生在 PivotTable 視圖與其資料來源中斷連線後。通常假定,在 PivotTable 會話期間,串連保持存在。然而,如果資料來源的串連丟失,應用程式可以使用 OnDisconnect 事件來警告使用者。

BeforeQuery、Query
BeforeQuery 事件和 Query 事件分別發生在 PivotTable 視圖將查詢發送到其資料來源之前和之後。 使用這些事件,應用程式可以通知使用者查詢進行中中,即顯示訊息或將指標更改為沙漏形。

顯示事件
AfterLayout
AfterLayout 事件將在 PivotChart 視圖的整個布局已計算完畢,但尚未在螢幕上繪製出任何元素的情況下發生。通過捕獲該事件,應用程式可以在繪製任何圖表項目之前,使用 drawObject 參數所返回的 ChChartDraw 對象在空的圖表畫布上繪製形狀或產生文本。

BeforeRender、AfterRender
BeforeRender 和 AfterRender 事件分別發生在每個 PivotChart 視圖的元素繪製到螢幕之前和之後。通過捕獲這些事件,應用程式可以在繪製特定元素前後,使用 drawObject 參數所返回的 ChChartDraw 對象在圖表上繪製形狀或產生文本。另外,在繪製元素前,應用程式還可以使用 chartObject 參數所返回的對象來更改該元素的位置或其他屬性。

AfterFinalRender
AfterFinalRender 事件發生在所有 PivotTable 視圖的元素繪製到螢幕上之後。通過捕獲該事件,應用程式可以在繪製了所有圖表項目之後,使用 drawObject 參數所返回的 ChChartDraw 對象在圖表畫布的頂層繪製形狀或產生文本。

變更事件
DataChange
在更改了 PivotTable 視圖的某些屬性或從 PivotTable 視圖調用了某些方法後,將發生 DataChange 事件。有很多種環境都可以觸發此事件。通過計算 Reason 參數,應用程式可以確定進行了何種更改並採取相應措施。

DataSetChange
DataSetChange 事件發生在 PivotChart 視圖的資料集發生更改後。這表示或者由於查詢發送到資料來源而導致基本資料確實有所更改,或者是當前 PivotChart 視圖中顯示的資料發生了結構性更改(例如添加了一個序列)。因為該事件不提供有關資料集更改原因的具體資訊,所以建議使用其他事件(如上述顯示事件)來捕獲 PivotChart 視圖的具體更改。

PivotTableChange
在向 PivotTable 視圖添加或從中刪除了欄位、欄位集或總計後,將發生 PivotTableChange 事件;Reason 參數會指示發生了上述哪一種更改。捕獲此事件可以向開發人員提供反饋資訊,顯示使用者如何對其應用程式中 PivotTable 視圖進行操作。

SelectionChange
一旦當前選擇內容在 PivotTable 或 PivotChart 視圖中發生了更改,就發生 SelectionChange 事件。接著,應用程式就可以測試當前選擇了何種對象並據此更改使用者介面(例如基於當前選擇自訂一系列可用的命令)。

ViewChange
一旦視圖在 PivotTable 或 PivotChart 視圖中發生了更改,就發生 ViewChange 事件。對於 PivotTable 視圖,Reason 參數將指示發生了何種類型的更改;捕獲此事件可使應用程式基底於使用者更改當前視圖的方式來相應更改 PivotTable 視圖的格式。對於 PivotChart 視圖,Reason 參數總是返回同一個值 (-1),因此捕獲此事件所起的作用有限。

命令事件
CommandEnabled
當 PivotTable 或 PivotChart 視圖測試命令是否可用時,會發生 CommandEnabled 事件。Command 參數指示正在測試哪一個命令的可用性。使用者顯示命令菜單後,應用程式可以捕獲該事件,並使用 Enabled 參數動態啟用或禁用這些命令。

CommandChecked
當 PivotTable 或 PivotChart 視圖測試是否選中某一命令時,會發生 CommandChecked 事件。Command 參數指示正在測試哪一個命令的狀態。使用者顯示命令菜單後,應用程式可以設法捕獲該事件,並使用 Checked 參數動態選中或取消選中這些命令。

CommandBeforeExecute、CommandExecute
CommandBeforeExecute 和 CommandExecute 事件分別發生在從 PivotTable 或 PivotChart 視圖執行某一命令之前或之後。Command 參數指示將要執行哪個命令,或剛剛執行了哪個命令。CommandBeforeExecute 事件的 Cancel 參數可用於取消掛起命令。使用這些事件,應用程式可以防止某些命令的執行,或者向使用者警告掛起命令的狀態。

鍵盤和滑鼠事件
KeyDown、KeyPress、KeyUp、MouseDown、MouseMove、MouseUp、MouseWheel、Click、DblClick
除了 MouseWheel 事件,這些鍵盤和滑鼠事件對於 Access 2002 中的 PivotTable 和 PivotChart 視圖都是新事件,但總的說來它們對於 Access 並不是新事件;“Access Visual Basic 協助”中已對其用法進行了介紹。

當使用者單擊或滾動滑鼠滾輪時,會發生 MouseWheel 事件。在開發人員希望用滑鼠滾輪來觸發自訂動作,而不進行預設的滑鼠滾輪行為(例如反白 PivotTable 視圖的不同列)的情況下,應用程式就可以捕獲此事件。

總結
藉助於 Access 10.0 物件程式庫中的這些新事件,開發人員現在能夠在其應用程式中對 PivotTable 和 PivotChart 視圖施加更強的控制。



相關文章

E-Commerce Solutions

Leverage the same tools powering the Alibaba Ecosystem

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

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

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