2015-07-01 2 views
0

Я ищу событие, которое возникает, когда пользователь выбирает текст в области предварительного просмотра электронной почты. Например. вы просматриваете электронную почту в области предварительного просмотра и выбираете какой-либо текст. Я не видел ничего в объектной ссылке на этот эффект, но пространство имен настолько велико, кажется, что где-то всегда есть какой-то объект, который делает именно то, что мне нужно, о чем я не знаю.Выбранный текст/щелчок правой кнопкой мыши (Outlook 2007 VBA)

В целом, я хотел бы посмотреть, соответствует ли выбранный текст шаблону, и если да, вставьте подменю в меню правой кнопки мыши (тот, который говорит «Копировать», «Кто есть», «Синонимы», «Перевести». .). Помощь с этим тоже будет оценена. Я считаю, что CommandBar - это «текст», но я не уверен, как обращаться к нему через имя.

ответ

0

Объектная модель Outlook не раскрывает область предварительного просмотра вообще. Вы можете перейти к объекту Word в области предварительного просмотра, используя поиск в окне поиска и API Accessibility.

Если опция Redemption является опцией, она предоставляет объект SafeExplorer, обладающий свойством ReadPane. Когда у вас есть объект Word.Document, вы можете прочитать свойство Document.Application и использовать событие Application.WindowSelectionChange. Доступ к выбранному тексту можно получить с помощью SafeExplorer.ReadingPane.SelText property. Word.Application можно получить от SafeExplorer.ReadingPane.WordEditor.Application.

set sExplorer = CreateObject("Redemption.SafeExplorer") 
sExplorer.Item = Application.ActiveExplorer 
MsgBox sExplorer.ReadingPane.SelText 
+0

Спасибо, Дмитрий. Отметив это как ответ, поскольку я думаю, что это самое близкое, что я получу. К сожалению, использование Redemption не является вариантом, так как это будет распространяться по всей команде, и у меня нет доступа администратора к машинам. Там есть бесплатное исправление, это здорово, но я думаю, что я должен держаться подальше от такого рода обходных решений. Мне нужно будет исследовать создание пользовательского меню программным путем при выборе нового элемента/создании поля ввода, которое пользователь может вставить в него и т. Д. – JustADude

+0

В HKCU может быть установлен Redemption - он достаточно умен, чтобы проверить, недоступен ли HKLM. RedemptionLoader на самом деле не является взломом, это, по сути, COM-система-свет - он делает именно то, что делает COM. –

+0

Имейте в виду, что API Accessibility по-прежнему является опцией. –

0

Объектная модель Outlook не предоставляет ничего для этого.

Смежные вопросы