[英]How to Differentiate SaveAs call and Save call in PowerPoint events?
我正在為 PowerPoint 2010 編寫插件。我正在使用 PowerPoint 的兩個功能。
Application_PresentationBeforeSave(ByVal Pres As Microsoft.Office.Interop.PowerPoint.Presentation, ByRef Cancel As Boolean)
Application_PresentationSave(ByVal Pres As Microsoft.Office.Interop.PowerPoint.Presentation)
當我在 powerpoint 上執行保存操作 (Ctrl+S) 或 SaveAs (File -> SaveAs) 時,它會執行Application_PresentationBeforeSave()
方法。
但是我需要區分這兩個調用(Ctrl+S 和 SaveAs)並相應地執行一些任務。 那么如何在 BeforeSave 方法中區分這兩個調用?
對於 Word,在Application_DocumentBeforeSave(ByVal Doc As Microsoft.Office.Interop.Word.Document, ByRef SaveAsUI As Boolean, ByRef Cancel As Boolean)
有 SaveAsUI 標志,用於區分此方法是否已被 SaveAs 或 Ctrl+S 操作調用。
那么是否有任何標志/屬性可以區分 PowerPoint 中的相同內容?
您需要重新調整功能區按鈕的用途或將后台 UI 控件替換為您自己的控件,以便了解用戶在 UI 中選擇的操作。 如果是功能區控件,請參閱 MSDN 中Office Fluent Ribbon文章中的臨時重新調整命令用途。 MSDN 中的以下文章深入介紹了 Backstage UI:
為開發人員自定義 Office 2010 Backstage 視圖
如果使用 Ctrl+S 快捷鍵,您需要使用 Windows API 函數設置鍵盤掛鈎,請參閱使用快捷鍵調用 Office 加載項中的函數以了解更多信息。
感謝尤金給我展示了一種方法。 我的問題得到了解決。 我試過你的建議。
這是我的解決方案的描述。 我在 Ribbon.xml 中添加了函數調用
在 MySaveAs() 函數中,我設置了一個 glbal 變量。 並在 BeforeSave 方法中使用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.