這個方法是在用戶端實作。ABBYY FineReader Engine 會針對 FRDocument 物件的某些方法呼叫此方法。它會將目前作業的大致完成百分比資訊 (例如影像載入、分析、識別等) 傳送給客戶端。實作此方法時,可以顯示進度指示器,就像 ABBYY FineReader 中的做法一樣。
在 Windows 中,它也可以處理系統訊息,以協助避免應用程式在長時間作業期間看起來沒有回應。這對具有使用者介面的應用程式特別有幫助。
HRESULT OnProgress(
IFRDocument* Sender,
int Percentage,
VARIANT_BOOL* Cancel
);
void OnProgress(
IFRDocument Sender,
int Percentage,
ref bool Cancel
);
Sub OnProgress( _
Sender As IFRDocument, _
Percentage As Integer, _
ByRef Cancel As Boolean _
)
Sender
[in] 此參數是指傳送通知的 FRDocument 物件。
Percentage
[in] 此參數表示目前工作已完成的百分比。其範圍為 0 到 100。
Cancel
[in, out] 您可以將此變數設為 TRUE,表示應終止該處理序。此時,處理函式回傳 E_ABORT。
[僅限 C++] 如果此方法回傳的值不是 S_OK,則表示錯誤發生在用戶端;在此情況下,將不考慮 Cancel 參數的值。
此方法的客戶端實作必須確保,在方法內部拋出的所有例外狀況都會被攔截並處理,且不會有任何例外狀況傳遞到方法外部。若例外狀況傳遞到方法外部,可能會導致不可預期的結果 (例如程式終止) 。
IFRDocumentEvents
FRDocument