Как программно получить доступ к «панели сообщений» в Outlook? - PullRequest
0 голосов
/ 26 июня 2019

Когда я включаю автоматические сообщения «Вне офиса» в Outlook 2010, «панель сообщений» заполняется текстом предупреждения. Я хотел бы использовать такую ​​функцию, чтобы информировать пользователя о том, что моя собственная функция включена, но я не могу найти никаких ссылок на программный доступ к этой панели; Я нашел кое-что о строке состояния, но по некоторым причинам она не может использоваться в VBA в Outlook.

Я даже не уверен, что правильное английское название этой функции - "панель сообщений"; Я имею в виду ту же панель, которая в Word используется для информирования пользователя о том, что документ «опасен» из-за его выхода из Интернета. Эта панель сообщений отображается в VBA для Outlook?

Я также пытался найти другие способы информирования пользователя, поэтому я начал изучать ленту: если бы я мог сделать свою вкладку видимой, я мог бы использовать ее как «панель сообщений», но Outlook управляет лентой иначе, чем в других Office. программы, поэтому большинство доступных примеров не применимо / не работает в Outlook.

Мне удалось программно создать вкладку и добавить к ней кнопку, но потом я не могу сделать вкладку видимой, поэтому она бесполезна.

Я также пытался использовать свойство "position" панели команд: не только msoBarTop, но также msoBarBottom или msoBarPopup, но Outlook продолжает игнорировать мои усилия, поэтому я застрял.

Но, возможно, управление лентой в Outlook с помощью VBA следует рассмотреть в отдельном вопросе (здесь есть несколько вопросов по этому поводу, но я не смог найти полезных советов для меня; у меня нет доступа к VB VSTO).

1 Ответ

2 голосов
/ 27 июня 2019

Область, на которую вы ссылаетесь, используется для реализации Mail Tips .Хотя вы можете создавать собственные через Центр администрирования Exchange, с ними нельзя взаимодействовать с помощью кода.

Манипулировать элементами управления ленты, чтобы показывать состояния или пользовательские сообщения, на самом деле не рекомендуется, так как лента обычно является статической (за исключениемв случае меню, выпадающих меню и галерей).

Если ваша цель - показать временное оповещение, лучше использовать Windows SDK для отображения уведомлений Windows.Если ваше оповещение, размещенное в Outlook, имеет первостепенное значение, рассмотрите возможность использования областей форм или надстройки с панелями задач для отображения сообщений.Или даже простой VBA MessageBox или пользовательская форма.

Также обратите внимание, что использование CommandBar действительно применимо только к Outlook 2007 и более ранним версиям - в более новых версиях больше нет CommandBars, только лента.

...