此方法在客户端实现。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 参数的值将不会被考虑。
此 method 的客户端实现必须确保:在该 method 内部抛出的所有异常都已被捕获并处理,且不会有任何异常传播到该 method 外部。异常一旦传播到该 method 外部,可能会导致不可预测的结果 (例如程序终止) 。
IFRDocumentEvents
FRDocument