gpt4 book ai didi

events - PowerPoint,演示结束事件后

转载 作者:行者123 更新时间:2023-12-01 15:24:35 24 4
gpt4 key购买 nike

PowerPoint 2007 仅公开一个演示文稿关闭事件 ( PresentationClose ),该事件在演示文稿关闭之前引发。

在我正在处理的几段代码中,我需要跟踪打开的演示文稿,因此要对其中一个被关闭使用react。

一般来说,PowerPoint 提出的事件就足够了。以下情况除外。

如果演示文稿在关闭时尚未保存,PowerPoint 会显示一个对话框,询问用户是否要保存他的演示文稿。如果用户单击是或否,一切都很好,因为演示文稿最终将关闭。但他也可以选择取消关闭……

在这种情况下,引发了关闭事件,演示文稿仍然存在,但我的应用程序不知道它。

有人可以给我一些解决方法吗?也许在用户点击取消后引发的事件?

最佳答案

你可能想要 PresentationBeforeClose PresentationCloseFinal 添加于 PowerPoint 2010 .
如果用户在提示时单击"is"保存,然后单击“取消”退出“保存演示文稿”窗口,您也可能会出现同样的问题。这仍然使演示文稿在应用程序中保持活跃。
我想出的 PowerPoint 2007 解决方法(inspiration from here):

void Application_PresentationClose(PowerPoint.Presentation presentation)
{
if (presentation.Saved == MsoTriState.msoFalse)
{
MessageBoxResult savePrompt = MessageBox.Show(string.Format("Do you want to save the changes you made to {0}?", presentation.Application.ActiveWindow.Caption), Globals.ThisAddIn.Application.Name, MessageBoxButton.YesNoCancel, MessageBoxImage.Warning, MessageBoxResult.Yes);
if (savePrompt == MessageBoxResult.Yes)
System.Windows.Forms.SendKeys.Send("Y"); // trigger default SaveAs prompt
else if (savePrompt == MessageBoxResult.No)
System.Windows.Forms.SendKeys.Send("N"); // discard presentation
else
System.Windows.Forms.SendKeys.Send("{ESC}"); // disables default SaveAs prompt
}
}

关于events - PowerPoint,演示结束事件后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9097230/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com