跳轉到主要內容
此方法是在用戶端實作。ABBYY FineReader Engine 會在變更已透過 Image Viewer 中的工具修改過的表格區塊之前呼叫此方法: 如需瞭解如何選取這些工具,請參閱 Image Viewer Commands 的說明。 此方法會將即將變更的表格區塊索引,以及新增或刪除之分隔線的位置和類型傳遞給客戶端。您也可以利用此方法取消該作業。

語法

C++

HRESULT OnToolChangeTable(
  int           BlockIndex,
  int           Position,
  VARIANT_BOOL  IsVerticalSeparator,
  VARIANT_BOOL  DeleteSeparator,
  VARIANT_BOOL* Cancel
);

C#

void OnToolChangeTable(
  int      BlockIndex,
  int      Position,
  bool     IsVerticalSeparator,
  bool     deleteSeparator,
  out bool Cancel
);

Visual Basic .NET

Sub OnToolChangeTable( _
  BlockIndex As Integer, _
  Position As Integer, _
  IsVerticalSeparator As Boolean, _
  DeleteSeparator As Integer, _
  ByRef Cancel As Boolean _
)

參數

BlockIndex [in] 包含即將修改之表格區塊的索引。該索引位於 ILayout::VisualBlocks 集合中。 Position [in] 包含表格中分隔線的位置。分隔線的位置是其在基準網格中的座標。 IsVerticalSeparator [in] 指定分隔線是垂直或水平。 DeleteSeparator [in] 指定分隔線將被刪除或新增。 Cancel [out] 您可以將此變數設為 TRUE,表示應終止處理程序。在此情況下,分隔線將不會被新增 (或刪除) 。

回傳值

[僅限 C++] 如果此 方法 回傳的值不是 S_OK,表示用戶端發生了錯誤,此時不會考量 Cancel 參數的值。

備註

  • 此處所稱的基準網格,是指由表格邊框和分隔線形成的網格。每條垂直分隔線都會使水平座標加一,每條水平分隔線都會使垂直座標加一。座標軸方向為由左至右、由上至下。
  • 此方法的客戶端實作必須確保,凡是在方法內部拋出的所有例外狀況,都會被捕捉並處理,且不會傳遞到方法外部。例外狀況若傳遞到方法外部,可能會導致不可預期的結果 (例如程式終止) 。

另請參閱

IImageViewerEvents