跳轉到主要內容
此方法會在用戶端實作。當 Image ViewerZoom ViewerText EditorText ValidatorDocument Viewer 中的捲動方塊因滑鼠或鍵盤操作而移動時,ABBYY FineReader Engine 會呼叫此方法。 此方法會將捲軸代碼、捲動方塊位置,以及捲動的行數傳遞給客戶端。您也可以透過此方法取消該作業。

語法

C++

HRESULT OnScroll(
  int           HorzScrollBarCode,
  int           VertScrollBarCode,
  int           Position,
  int           Count,
  VARIANT_BOOL* Cancel
);

C#

void OnScroll(
  int      HorzScrollBarCode,
  int      VertScrollBarCode,
  int      Position,
  int      Count,
  out bool Cancel
);

Visual Basic .NET

Sub OnScroll( _
  HorzScrollBarCode As Integer, _
  VertScrollBarCode As Integer, _
  Position As Integer, _
  Count As Integer, _
  ByRef Cancel As Boolean _
)

參數

HorzScrollBarCode [in] 指定表示使用者捲動要求的捲軸代碼。此參數可以是下列值之一:
  • SB_LEFT (6) — 捲動到最左側。
  • SB_ENDSCROLL (8) — 結束捲動。
  • SB_LINELEFT (0) — 向左捲動。
  • SB_LINERIGHT (1) — 向右捲動。
  • SB_PAGELEFT (2) — 向左捲動一頁。
  • SB_PAGERIGHT (3) — 向右捲動一頁。
  • SB_RIGHT (7) — 捲動到最右側。
  • SB_THUMBPOSITION (4) — 捲動到絕對位置。目前位置由 Position 參數指定。
  • SB_THUMBTRACK (5) — 將捲動方塊拖曳到指定位置。目前位置由 Position 參數指定。
這些常數定義於 Winuser.h 中。若未發生水平捲動,則此參數為 -1。 VertScrollBarCode [in] 指定表示使用者捲動要求的捲軸代碼。此參數可以是下列值之一:
  • SB_BOTTOM (7) — 捲動到底部。
  • SB_ENDSCROLL (8) — 結束捲動。
  • SB_LINEDOWN (1) — 向下捲動一行。
  • SB_LINEUP (0) — 向上捲動一行。
  • SB_PAGEDOWN (3) — 向下捲動一頁。
  • SB_PAGEUP (2) — 向上捲動一頁。
  • SB_THUMBPOSITION (4) — 捲動到絕對位置。目前位置由 Position 參數提供。
  • SB_THUMBTRACK (5) — 將捲動方塊拖曳到指定位置。目前位置由 Position 參數提供。
  • SB_TOP (6) — 捲動到頂部。
這些常數定義於 Winuser.h 中。若未發生垂直捲動,則此參數為 -1。 Position [in] 若捲軸代碼為 SB_THUMBPOSITION 或 SB_THUMBTRACK,則指定捲動方塊的位置;否則不使用。 Count [in] 如果是透過滑鼠滾輪進行捲動,則包含捲動的行數。 Cancel [out] 您可以將此變數設為 TRUE,表示應終止此程序。

回傳值

[僅限 C++] 如果此 方法 回傳的值不是 S_OK,表示用戶端發生了錯誤;在這種情況下,Cancel 參數的值將不予考慮。

備註

此方法的客戶端實作必須確保在方法內部拋出的所有例外狀況都會被攔截並處理,且不會有任何例外狀況傳播到方法外部。若例外狀況傳播到方法外部,可能會導致無法預期的結果 (例如程式終止) 。

另請參閱

IInputEvents