Отображение сообщений генерации презентаций

Сообщения генерации презентаций

PPT API может отображать сообщения, когда вы генерируете PowerPoint® презентация. Сообщения инициируются каждый раз, когда элемент презентации создается или добавляется во время генерации презентации.

Можно задать дополнительные сообщения для отображения во время создания презентации. PPT API обеспечивает эти классы для определения сообщений:

  • ProgressMessage

  • DebugMessage

  • WarningMessage

  • ErrorMessage

PPT API предоставляет дополнительные классы для обработки отправки и отображения сообщений презентации. Он использует MATLAB® события и прослушиватели для отправки сообщений. Сообщение отправляется на основе данных о событиях для заданного объекта PPT. Введение в события и прослушиватели смотрите в Событие и Концепции прослушивателя.

Примечание

При создании диспетчера сообщений PPT API сохраняет диспетчера до окончания текущего сеанса работы с MATLAB. Чтобы избежать дублирования отчетов об объектах сообщений во время сеанса работы с MATLAB, удалите прослушиватели событий сообщений.

Отображение сообщений PPT по умолчанию

В этом примере показано, как отобразить сообщения отладки PPT по умолчанию. Используйте аналогичный подход для отображения других видов сообщений презентации PPT.

  1. Создайте диспетчера сообщений, используя MessageDispatcher.getTheDispatcher способ. Используйте одного и того же диспетчера для всех сообщений.

    dispatcher = MessageDispatcher.getTheDispatcher;
    
  2. Чтобы отобразить отладку сообщения, используйте MessageDispatcher.Filter свойство.

    dispatcher.Filter.DebugMessagesPass = true;
    
  3. Добавьте прослушиватель, используя addlistener MATLAB функция. Укажите объект диспетчера, источник и данные о событиях и disp функция, которая задает данные о событиях и формат сообщения.

    l = addlistener(dispatcher,'Message', ...
          @(src, evtdata) disp(evtdata.Message.formatAsText));
    
  4. Добавьте код, который удаляет прослушиватель после кода, который генерирует презентацию.

    delete(l);
    

В этой презентации отображаются сообщения отладки.

import mlreportgen.ppt.*;

dispatcher = MessageDispatcher.getTheDispatcher;
dispatcher.Filter.DebugMessagesPass = true;

l = addlistener(dispatcher,'Message', ...
      @(src, evtdata) disp(evtdata.Message.formatAsText));

slides = Presentation('myMessagePresentation');
titleSlide = add(slides,'Title and Content');

p = Paragraph('Hello World:');
p.Style = {Bold(true)};
t = Text('  How are you?');
t.Bold = false;
append(p,t);


add(titleSlide,'Content',p);

close(slides);
     
delete(l);

Создание и отображение сообщения о прогрессе

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

  1. Создайте диспетчера сообщений.

    dispatcher = MessageDispatcher.getTheDispatcher;
    
  2. Добавьте прослушиватель, используя addlistener MATLAB функция.

    l = addlistener(dispatcher,'Message', ...
          @(src, evtdata) disp(evtdata.Message.formatAsText));
    
  3. Отправьте сообщение, используя Message.dispatch способ. Укажите объект диспетчера и сообщение для отправки. Здесь сообщение отладки называется firstSlide, и Presentation slides объекта является источником сообщения.

    dispatch(dispatcher,ProgressMessage('firstSlide',slides));
    
  4. Добавьте код, который удаляет прослушиватель после кода, который генерирует презентацию.

    delete(l);
    

В этой презентации используется это сообщение о прогрессе.

import mlreportgen.ppt.*;
pre = Presentation('myPresentation.pptx');

dispatcher = MessageDispatcher.getTheDispatcher;
l = addlistener(dispatcher,'Message', ...
      @(src, evtdata) disp(evtdata.Message.formatAsText));


dispatch(dispatcher,ProgressMessage('starting presentation',pre));
open(pre);

titleText = Text('This is a Title');
titleText.Style = {Bold};

replace(pre,'Title',titleText);

close(pre);

delete(l);

См. также

Функции

Классы