メインコンテンツへスキップ
このメソッドはクライアント側で実装されます。Image Viewer のツールを使って修正したテーブルブロックに対して変更を加える前に、ABBYY FineReader Engine から呼び出されます。 これらのツールの選択方法については、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 _
)

Parameters

BlockIndex [in] 変更対象のテーブルブロックのインデックスを格納します。インデックスは ILayout::VisualBlocks コレクション内のものです。 Position [in] テーブル内の区切り線の位置を格納します。区切り線の位置は、ベースグリッド上の座標で表されます。 IsVerticalSeparator [in] 区切り線が縦方向か横方向かを指定します。 DeleteSeparator [in] 区切り線を削除するか追加するかを指定します。 Cancel [out] この変数を TRUE に設定すると、処理を中止するよう示すことができます。この場合、区切り線は追加 (または削除) されません。

戻り値

[C++ のみ] このメソッドが S_OK 以外の値を返した場合は、クライアント側でエラーが発生したことを示します。この場合、Cancel パラメーターの値は無視されます。

注記

  • ここでいうベースグリッドとは、表の罫線と区切り線で構成されるグリッドを指します。縦方向の区切り線が 1 本増えるごとに水平方向の座標が 1 増加し、横方向の区切り線が 1 本増えるごとに垂直方向の座標が 1 増加します。座標軸は、左から右、上から下の向きです。
  • このメソッドのクライアント実装では、メソッド内でスローされるすべての例外を確実にキャッチして処理し、例外がメソッドの外部に伝播しないようにする必要があります。例外がメソッドの外部に伝播すると、予期しない結果 (プログラムの終了など) を招くおそれがあります。

関連項目

IImageViewerEvents