API 指南 > IMathcadPrimeEvents2
IMathcadPrimeEvents2
IMathcadPrimeEvents2 是在 Ptc.MathcadPrime.Automation.dll 中宣告的 COM 事件介面,且可在 PTC Mathcad Prime 安裝目錄中找到。用戶端應用程式可以使用此介面來處理 PTC Mathcad Prime 事件。若要執行此操作,請註冊使用 InitializeEvents2 函數實作 IMathcadPrimeEvents2 的物件。
下列 COM 事件介面可在 PTC Mathcad Prime 中找到:
IMathcadPrimeEvents (已作廢)
IMathcadPrimeEvents2 (展開和取代 IMathcadPrimeEvents)
* 
PTC 建議使用 IMathcadPrimeEvents2。此 API 指南中並未記錄已作廢的 IMathcadPrimeEvents 介面。
下列事件可在 IMathcadPrimeEvents2 中找到:
public interface IMathcadPrimeEvents2
{
void OnWorksheetSaved([In] string documentFullNameArg);

void OnWorksheetClosed([In] string documentFullNameArg,
[In] string documentNameArg);

void OnWorksheetModified([In] string documentFullNameArg,
[In] string documentNameArg,
[In] bool isModifiedArg);

void OnWorksheetRenamed([In] string previousFullNameArg,
[In] string currentFullNameArg,
[In] string previousDocNameArg,
[In] string currentDocNameArg);

void OnWorksheetInputsOutputsSelected([In] string documentFullNameArg,
[In] string documentNameArg,
[In] IMathcadPrimeInputs inputsArg,
[In] IMathcadPrimeOutputs outputsArg);
void OnExit();

void OnWorksheetStatesGenerated([In] [MarshalAs(UnmanagedType.BStr)] string documentFullNameArg,
[In] [MarshalAs(UnmanagedType.BStr)] string documentNameArg,
[In] WorksheetOperations operationsArg,
[In] [MarshalAs(UnmanagedType.Interface)] IMathcadPrimeInputsOutputsStates itemsStatesArg,
[In] [MarshalAs(UnmanagedType.Interface)] IMathcadPrimeInputsOutputsConflicts conflictsArg);

void OnWorksheetStatesGenerating([In] string documentFullNameArg,
[In] string documentNameArg,
[In] WorksheetOperations operationsArg,
[In] IMathcadPrimeInputsOutputsStates itemsStatesArg,
[In] IMathcadPrimeInputsOutputsConflicts conflictsArg);

void OnWorksheetRequestToUpdateInputs([In] string documentFullNameArg,
[In] string documentNameArg,
[In] IMathcadPrimeValuesSetter setterArg);
}
事件語法與引數
OnWorksheetSaved 
發生在您儲存工作表時。
Syntax
void OnWorksheetSaved([In] string documentFullNameArg);
Arguments
documentFullNameArg - 工作表的完整名稱與路徑。
OnWorksheetClosed 
發生在工作表關閉時。
Syntax
void OnWorksheetClosed([In] string documentFullNameArg,
[In] string documentNameArg);
Arguments
documentFullNameArg - 關閉工作表的完整名稱與路徑。如果工作表是新的未儲存文件,則引數為 null
documentNameArg - 工作表名稱。
OnWorksheetModified 
發生在工作表修改時。
Syntax
void OnWorksheetModified([In] string documentFullNameArg,
[In] string documentNameArg,
[In] bool isModifiedArg);
Arguments
documentFullNameArg - 已修改的工作表的完整名稱與路徑。如果工作表是新的未儲存文件,則引數為 null
documentNameArg - 工作表名稱。
isModifiedArg:
True - 工作表會標記為已修改。
False - 工作表會標記為未修改。
OnWorksheetRenamed 
發生在使用另存新檔重新命名工作表時
Syntax
void OnWorksheetRenamed([In] string previousFullNameArg,
[In] string currentFullNameArg,
[In] string previousDocNameArg,
[In] string currentDocNameArg);
Arguments
documentFullNameArg - 工作表先前的完整名稱與路徑。
documentNameArg - 工作表目前的完整名稱與路徑。
previousDocNameArg - 工作表先前的名稱。
currentDocNameArg - 工作表目前的名稱。
OnWorksheetInputsOutputsSelected 
發生在工作表中已選取任何輸入與/或輸出時。
Syntax
void OnWorksheetInputsOutputsSelected([In] string documentFullNameArg,
[In] string documentNameArg,
[In] IMathcadPrimeInputs inputsArg,
[In] IMathcadPrimeOutputs outputsArg);
Arguments
documentFullNameArg - 工作表的完整名稱與路徑。如果工作表是新的未儲存文件,則引數為 null
documentNameArg - 工作表名稱。
inputsArg - 所選輸入清單。
outputsArg - 所選輸出清單。
OnExit 
PTC Mathcad Prime 由其他 COM 用戶端或透過任何非 COM 方法關閉時,會發生此情況。
當 COM 用戶端使用 IMathcadPrimeApplication3.Quit 關閉 PTC Mathcad Prime 時,不會發生此事件。
Syntax
void OnExit();
OnWorksheetStatesGenerated 
當狀態產生完成時發生。
Syntax
void OnWorksheetStatesGenerated([In] [MarshalAs(UnmanagedType.BStr)] string documentFullNameArg,
[In] [MarshalAs(UnmanagedType.BStr)] string documentNameArg,
[In] WorksheetOperations operationsArg,
[In] [MarshalAs(UnmanagedType.Interface)] IMathcadPrimeInputsOutputsStates itemsStatesArg,
[In] [MarshalAs(UnmanagedType.Interface)] IMathcadPrimeInputsOutputsConflicts conflictsArg);
Arguments
documentFullNameArg - 工作表的完整名稱與路徑。
documentNameArg - 工作表的名稱。
operationsArg - 觸發事件的工作表運算。
itemsStatesArg - 輸入與輸出項目清單及其擷取值。
conflictsArg - 由 itemsStatesArg 所導致的衝突集合。
OnWorksheetStatesGenerating 
發生在狀態產生期間。
Syntax
void OnWorksheetStatesGenerating([In] string documentFullNameArg,
[In] string documentNameArg,
[In] WorksheetOperations operationsArg,
[In] IMathcadPrimeInputsOutputsStates itemsStatesArg,
[In] IMathcadPrimeInputsOutputsConflicts conflictsArg);
Arguments
documentFullNameArg - 產生狀態之工作表的完整名稱與路徑。
documentNameArg - 工作表的名稱。
operationsArg - 觸發事件的工作表運算。
itemsStatesArg - 輸入與輸出項目清單及其擷取值。
conflictsArg - 由 itemsStatesArg 所導致的衝突集合。
OnWorksheetRequestToUpdateInputs 
當 Mathcad 需要輸入區域的新值時,會發生此情況。
Syntax
void OnWorksheetRequestToUpdateInputs([In] string documentFullNameArg,
[In] string documentNameArg,
[In] IMathcadPrimeValuesSetter setterArg);
Arguments
documentFullNameArg - 工作表的完整名稱與路徑。
documentNameArg - 工作表的名稱。
setterArg - 新輸入值的設定值。引數由用戶端提供。
相關連結
這是否有幫助?